Releases: deepmodeling/abacus-develop
Releases · deepmodeling/abacus-develop
v3.9.0.9
What's Changed
Feature
- Feature&Doc&Tests: Support for deepks_v_delta=-1&-2 by @ErjieWu in #6245
- Add deepks_out_freq_elec for outputting deepks labels during electronic steps by @xuan112358 in #6325
- Feature: long-range corrected hybrid functionals implementation with Spencer-Alavi truncation Coulomb potential by @1041176461 in #6351
Fix
- Fix: reinterpret_cast bug for c10::complex. by @ErjieWu in #6321
- Reformat running log, delete 'printe' command in INPUT and fix the output eigenvalue information issue by @mohanchen in #6326
- Fix: skip mix_dmr after the last iteration by @dzzz2001 in #6331
- Fix: Fix Compile Error on CUDA Version > 12.9 by @Flying-dragon-boxing in #6337
- Fix: Fix calculation type inconsistency across MPI ranks, so that the log file names are correct when
out_alllog = 1
by @AsTonyshment in #6356 - Fix: Add MPI synchronization for
ekb
band energy tensor, and now GPU CI/CD test case07_NO_EDM_TDDFT_GPU
is functional again by @AsTonyshment in #6354
Refactor
- change Exx_Info_Global::coulomb_param from unordered_map to map (Do not recommend using unordered_map, which has defects in C++11) by @linpeize in #6318
- change INPUT exx_ for linear combination of coulomb_param by @linpeize in #6316
- [Refactor] Rename module_basis to source_basis || module_cell to source_cell by @Critsium-xy in #6319
- Refactor: release the limit (<150) on length of comment lines of INPUT by @kirk0830 in #6329
- Refactor: clean Davidson code, remove deprecated overlap matrix scc related code by @Cstandardlib in #6330
- [Refactor] Rename module_elecstate and module_psi and module_hamilt_pw by @Critsium-xy in #6334
- Remove INPUT parameter
nbands_istate
and unify the naming of real space wave function and partial charge density by @AsTonyshment in #6336 - new gint module (This is a big PR that replaces old integral codes) by @dzzz2001 in #6296
- [Refactor] Rename module_md, module_relax, module_hamilt_lcao and module_io by @Critsium-xy in #6340
- [Refactor] Move module_ri to source_lcao/module_ri and module_rdmft to source_lcao/module_rdmft and correct some documents by @Critsium-xy in #6344
- Refactor: new ccp param framework by @1041176461 in #6350
- Refactor: Refactor KEDF management in ESolver_OF by @sunliang98 in #6349
- [Refactor] Improve type safety with std::complex by @kluophysics in #6346
- [Refactor] Rename module_tddft and hamilt_ofdft and hamilt_stodft and hamilt_pwdft by @Critsium-xy in #6353
- Remove useless and outdated
write_psi_r_1
interface and improve related docs and examples by @AsTonyshment in #6345 - Add "#TOTAL ENERGY#" after each ion step by @mohanchen in #6342
Full Changelog: v3.9.0.8...v3.9.0.9
v3.9.0.8
What's Changed
Fix
Feature
- Add Mt_Gemm for the nonlocal_pw by @A-006 in #6253
- Feature: universal customized parameterization on exchange-correlation functionals by @kirk0830 in #6270
- Feature: add complex erf function by @1041176461 in #6301
- add exx nscf file check by @linpeize in #6288
- add write_libxc_r by @linpeize in #6293
- Combine relax_new with relax_old by @19hello in #6303
- print out geometry information during bfgs_trad relax by @lanshuyue in #6314
Refactor
- Reconstruct the LCAO codes for the parameter 'PARAM.inp.out_interval', enable a unified control of output information every few ionic steps. by @mohanchen in #6272
- Update the 'get_s' command and related description. Update the 'DOS' output filenames. Move some functions in 'after_all_runners' to 'after_scf'. Change 'out_dm' to 'out_dmk' and change 'out_dm1' to 'out_dmr' by @mohanchen in #6278
- Move DeePKS printing message from screen to log file. by @ErjieWu in #6281
- Refactor: replace ENABLE_DEEPKS & ENABLE_MLKEDF with ENABLE_MLALGO by @haozhihan in #6271
- Refactor: Migrate ML KEDF Descriptor Calculation & Output to module_io by @sunliang98 in #6287
- Refactor: Combine some checking functions in DeePKS. by @ErjieWu in #6285
- Refactor: Optimize the code structure of K_Vectors by @Flying-dragon-boxing in #6263
- Change examples and update DOS files, etc. by @mohanchen in #6291
- [Refactor] Move certain files to source_main by @Critsium-xy in #6290
- refactor
Exx_Info::coulomb_param
for RI by @linpeize in #6295 - Update output filenames for PCHG by @mohanchen in #6299
- [Refactor] Rename module_esolver to source_esolver by @Critsium-xy in #6300
- [Refactor] Rename module_hsolver to source_hsolver by @Critsium-xy in #6305
- Refactor: the ccp parameters to support additional Coulomb matrix construction methods. by @1041176461 in #6307
- [Refactor] Rename module_base to source_base by @Critsium-xy in #6311
- Refactor: change the name of keyword
force_thr_ev2
toforce_zero_out
for clarity by @kirk0830 in #6313 - remove deprecated INPUT exx parameters by @linpeize in #6317
Test
- Test: Add version check workflow for release validation by @sunliang98 in #6273
Version Update
- Update version.h by @xuan112358 in #6320
New Contributors
- @lanshuyue made their first contribution in #6314
Full Changelog: v3.9.0.7...v3.9.0.8
v3.9.0.7
What's Changed
Fix
- Fix: MPI communication errors due to inconsistent R-coordinates in sparse matrix generation by @AsTonyshment in #6233
- add check and update code format in exx by @linpeize in #6255
Feature
- Add more types bandgap of labels for deepks by @Chentao168 in #6226
- Feature: Support outputting partial charge and wave functions under PW basis when kpar > 1 by @AsTonyshment in #6242
- Feature: Spin-polarized calculations for EXX PW by @Flying-dragon-boxing in #6260
- Feature: implement k continuity initialization strategy & kernel by @jieli-matrix in #6171
Refactor
- Update out_dm and out_dm1 parameters and related documents by @mohanchen in #6237
- Update the file names controlled by the out_pot command by @mohanchen in #6240
- Refactor&Docs: Simplify deepks_bandgap realization and add input value checks. by @ErjieWu in #6241
- Refactor: Standardize OFDFT screen output to match KSDFT format by @sunliang98 in #6249
- Change the file names of output charge densities and kinetic energy densities by @mohanchen in #6254
- Exx ccp parameter by @linpeize in #6256
- Change 'istate.info' to 'eig.txt', add explanations for the parameter "out_band" (open files eigs1.txt and eigs2.txt). In the 'after_all_runners" subroutine in SDFT, use after_all_runners from ESolver_KS by @mohanchen in #6257
- Update the output filenames of H(k), S(k), T(k) and Vxc. In addition, modify the filenames of H(R), S(R), T(R), and Vxc by @mohanchen in #6262
Test
- Test: Rename the integrate tests of OFDFT. by @sunliang98 in #6246
Docs
- Docs: EXX PW Documents by @Flying-dragon-boxing in #6259
Version Updates
- Bump version v3.9.0.7 by @Flying-dragon-boxing in #6275
Full Changelog: v3.9.0.6...v3.9.0.7
v3.9.0.6
What's Changed
Feature
- Feature: Support
cube
format real-space wave function output for Plane Wave basis set by @AsTonyshment in #6217 - Update the output and readin of electronic wave functions in plane wave basis set by @mohanchen in #6223
- Update the output filenames when out_wfc_lcao turns on by @mohanchen in #6205
- Reactor FFT format and add RAII for resource handler by @A-006 in #6156
Fix
- Fix: correct the names of ut generated temp files in std::remove func by @kirk0830 in #6208
- Fix: Replace out-dated parameter
bands_to_print
without_pchg
and update related codes and docs by @AsTonyshment in #6211 - Fix: Fix minor
INPUT
parameter abuse inget_wf
CI/CD test by @AsTonyshment in #6215 - Resolve the segmentation fault occurring in the pw float implementation by @A-006 in #6130
- fix a bug, when out_chg becomes 2, the read in function fails by @mohanchen in #6235
- Fix: if restart but can't find Hexx files, warning and run as usual (automatically initialized the density) by @xuan112358 in #6194
Refactor
- Refactor: delete paw code, will add back the paw code with a better plan. by @haozhihan in #6225
Test
- [Test] Separate unit test for module_base as an example by @Critsium-xy in #6197
- [Test] Add RT-TDDFT GPU integrate tests and fix some related bugs/typos by @AsTonyshment in #6201
- [Test] Make tests in module_io, module_hsolver and module_cell indenpendent by @Critsium-xy in #6218
- [Test] Make tests in Module_Psi, Module_MD and Module_RI indenpendent by @Critsium-xy in #6232
- [Test] Add tests in subdirectories to its module by @Critsium-xy in #6231
Version Updates
- Update version.h (v3.9.0.5) by @haozhihan in #6209
- bump version to 3.9.0.6 by @denghuilu in #6239
Full Changelog: v3.9.0.5...v3.9.0.6-patch
v3.9.0.5
What's Changed
Feature
- Feature: multi-k case support for out_dm=1 by @ErjieWu in #6181
- Update HSE examples, reduce the testing time, modify some outputs for HSE and LR calculations, reformat the output atomic positions, change 'jd' files in integreate tests to 'README' files by @mohanchen in #6182
- Update the documents for input parameters by @mohanchen in #6192
- [Toolchain] 2025-02 version update by @QuantumMisaka in #6189
Fix
- Fix: Enhance the computational stability of ELF. by @sunliang98 in #6166
- Refactor: toolchain fixes for Intel oneapi 2025 for #5518 by @kluophysics in #6173
Refactor
- [Refactor] Separate blas_connector.cpp into three files by @Critsium-xy in #6178
Perf
Test
- Test: Add unit tests and integrate tests for new features of DeePKS. by @ErjieWu in #6140
- Update integrate tests to reduce running time, change improper output style and files by @mohanchen in #6179
- [Test] Now integrated test will run after other tests by @Critsium-xy in #6183
- Tear down the integration tests into more than 10 subdirectories by @mohanchen in #6186
- Updating the integraete tests, reorganize 02_NAO_Gamma and 03_NAO_multik directories by @mohanchen in #6188
Full Changelog: v3.9.0.4...v3.9.0.5
v3.9.0.4
What's Changed
Feature
- Feature: add out_mat_ds to print <phi|dphi> matrix by @dyzheng in #6149
- Feature: LDOS mode for pw by @YuLiu98 in #6167
Fix
- Fix: A bug caused by the incorrect update of DMR for deepks_out_labels>0 but deepks_scf=0 by @ErjieWu in #6155
- Fix: Fix periodic boundary condition search issue by enforcing
search_pbc=true
by @AsTonyshment in #6163 - Fix: add MPI_Finalize in QUIT function by @Critsium-xy in #6160
- Fix : fix the segment fault of md/relax of deepks by changing location of ld.init_DMR to before_scf by @xuan112358 in #6170
Refactor
- Refactor: reduce the read-in loop in sts_line by @YuLiu98 in #6148
- Refactor the rt-TDDFT integrate tests by @mohanchen in #6157
- Update namespace ModuleGint by @linpeize in #6169
- Keep refactoring the integrate tests by @mohanchen in #6165
- Update get_wf codes and output formats by @mohanchen in #6154
Perf
Test
- delete some useless integrate tests (in my opinions, we are wasting time to run these tests, they should be covered by unittests) by @mohanchen in #6152
- Add Gtest for GPU pw_basis and pw_basis_k by @A-006 in #6087
- Delete some useless integrate tests by @mohanchen in #6164
Full Changelog: v3.9.0.3...v3.9.0.4
v3.9.0.3
What's Changed
Feature
- Feature: Make KG-KSDFT support GPU by @Qianruipku in #6013
- Add two LCAO base group GPU version compilation options in toolchain by @tang070205 in #6014
- add LBFGS method by @19hello in #6005
- Feature: Make sKG support GPU by @Qianruipku in #6046
- Feature: write Vxc(R) by @maki49 in #6061
- Feature&Docs: support the indent control on FmtTable by @kirk0830 in #6055
- Feature: print the expectation value of angular momentum operators Lx/Ly/Lz for ABACUS NAO basis by @kirk0830 in #6097
- Feature: LDOS in pw basis set by @YuLiu98 in #6100
- Feature : deepks_out_labels = 2 for label preperation in deepks training by @xuan112358 in #6104
- Feature: LDOS in lcao basis sets by @YuLiu98 in #6123
- Feature: Add gamma point extrapolation for EXX PW by @Flying-dragon-boxing in #6118
- Feature: add postprocess for stm plot by @YuLiu98 in #6137
Fix
- Fix : out_mat_dh will lead to different result with MPI-1core with MPI-4core by @xuan112358 in #6018
- [Fix] Fix DCU port compilation error by @Critsium-xy in #6017
- Fix: calculate magnetic moments with onsite_radius>0(DFT+U case) by @dyzheng in #6024
- Fix: Enhance the warning message when the XC name cannot be recognized. by @sunliang98 in #6025
- Fix: Angular momentum quantum number check in reading SOC pseudopot file by @AsTonyshment in #6027
- Add genelpa warning if matrix is not positive definite by @Cstandardlib in #6022
- Fix: Enable EXX PW ACE only when separate_loop is on by @Flying-dragon-boxing in #6043
- Fix: directly enter exx loop when init_wfc=="file" by @maki49 in #6019
- Fix: DFT+U force&stress with
orbital_corr
of some elements are -1 by @dyzheng in #6049 - Fix: add the print header for
cusolvermp
in scf info by @kirk0830 in #6038 - Fix:
nan
values in LCAO band-decomposed charge density (get_pchg
) by @AsTonyshment in #6060 - Fix an output for debug by @maki49 in #6066
- Fix: add a check before calculating EXX force by @maki49 in #6067
- Fixing problem for running meta functionals with kinetic energy density mixed by @BariumOxide13716 in #6071
- Fix: modify warning output by @dzzz2001 in #6074
- Fix: Sign problem in DeePKS cal_pdm(). by @ErjieWu in #6082
- Fix: std::out_of_range of map when out_mat_t with multi-core by @YuLiu98 in #6090
- fix a typo(missing newline) in cuda.md by @OutisLi in #6103
- Fix: v_delta_precalc error in DeePKS. by @ErjieWu in #6106
- Fix: add exit 1 for shell UTs by @Qianruipku in #6122
- Fix: bug of divide_mpi_groups by @Qianruipku in #6120
- Fix some output information typo by @mohanchen in #6133
- Fix: Enhance the computational stability of tau_vw. by @sunliang98 in #6136
- Fix: Avoid hexadecimal output during relax process of HSE by @xuan112358 in #6146
- Fix: update weight in ldos by @YuLiu98 in #6144
Refactor
- Refactor: math_kernel_op by @Qianruipku in #6020
- Add templates for recip_to_real in the pw_basis by @A-006 in #6023
- Refactor symmetr.cpp, update some output formats in surfchem, etc. by @mohanchen in #6052
- Update output formats in running.log by @mohanchen in #6053
- Refactor: set dm_to_rho as a new esolver by @YuLiu98 in #6059
- Refactor: Remove some files in DeePKS and add some features. by @ErjieWu in #6065
- Refactor:Change potentials to module_pot by @A-006 in #6070
- Refactor: reduce the memory consumption of cal_gint_vlocal by @dzzz2001 in #6069
- Update ABACUS output formats, accept it after 3.10 version by @mohanchen in #6076
- Refactor: replace 3.14 using PI by @YuLiu98 in #6085
- Refactor: Remove C++17 syntax and optimize DMR calculation in DeePKS. by @ErjieWu in #6094
- Rafactor:remove GlobalC::rhopw by @A-006 in #6093
- Update Hamiltonian and Operator classes by @mohanchen in #6084
- [Refactor] Remove uncapsulted scalapack functions in dftu_occup.cpp by @Critsium-xy in #6099
- Refactor: Simplify some functions in DeePKS. by @ErjieWu in #6102
- Update DOS output formats (pw basis). by @mohanchen in #6113
- Refactor&Docs: add annotation beside commented-out lines in VDW module by @kirk0830 in #6117
- Refactor the LCAO DOS codes by @mohanchen in #6127
- Refactor: Move
cal_tau
to esolver_ks.cpp. by @sunliang98 in #6135 - Refactor: replace 3.14 using PI by @YuLiu98 in #6085
- Update DOS codes and related changes with respect to 'magnetzation' variable and default results of 204_NO_KP_NC example, reconstruct esolver by adding a new file pw_setup.cpp in esolver by @mohanchen in #6145
Perf
- Optimize: Compilation time of vdwd3_autoset_xcparam.cpp by @Qianruipku in #6042
- Perf: optimize cal_DMR and folding_HR by @dzzz2001 in #6068
Test
- Test: add test and output for dry run by @YuLiu98 in #6015
- test: fix Dockerfile.intel by @pxlxingliang in #5999
- Reopen unit test for DeePKS multi-k case. by @ErjieWu in #6039
- Tests: remove mock of print func in md/esolver tests by @YuLiu98 in #6073
- changing test 218 by @BariumOxide13716 in #6088
- Test: add test for pw LDOS by @YuLiu98 in #6109
Docs
- Doc: fix the format by @WHUweiqingzhou in #6008
- Update latest Intel oneAPI default compiler for cxx by @Cstandardlib in #6035
- exclude toolchain/install/ in
.gitignore
after toolchain run by @kluophysics in #6033 - [Toolchain] pack-run and package url by @QuantumMisaka in #6051
- Feature&Docs: support the indent control on FmtTable by @kirk0830 in #6055
- Docs: Correct intro to output in quickstart by @Cstandardlib in #6095
- Refactor&Docs: add annotation beside commented-out lines in VDW module by @kirk0830 in #6117
New Contributors
- @tang070205 made their first contribution in #6014
- @kluophysics made their first contribution in #6033
- @OutisLi made their first contribution in #6103
Full Changelog: v3.9.0.2...v3.9.0.3
LTSv3.10.0
BUG FIX
- Fix: Reopen UT in HContainer output. by @ErjieWu in #5781
- Fix: correct the typo and format error in doc by @kirk0830 in #5788
- Fix 1. get_pchg with nspin=4 and 2. out_mul with DFT+U and 3. fix updates in develop branch by @dyzheng in #5859
- Fix: modify orb info manually by @YuLiu98 in #5853
- Fix: parse_expression for scientific notation by @1041176461 in #5882
- Fix: Resolve compilation issue with Libxc 7.0.0 in ABACUS by @AsTonyshment in #5905
- Fix a bug and a magic number in module_exx_symmetry by @maki49 in #5848
- Fix the wrong symmetry analysis at nspin=2 by @maki49 in #5926
- Fix a bug about hcontainer in exx nscf by @maki49 in #5927
- Fix: fix cmake bug when USE_CUDA=1 and ENABLE_DEEPKS=1 by @dzzz2001 in #5929
- Fix: Fix segmentation fault in integrate test 312_NO_GO_wfc_get_wf by @AsTonyshment in #5970
- Fix : out_mat_dh will lead to different result with MPI-1core with MPI-4core by @xuan112358 in #6018
- Fix: Enhance the warning message when the XC name cannot be recognized. by @sunliang98 in #6025
- Update latest Intel oneAPI default compiler for cxx by @Cstandardlib in #6035
- Fix: Angular momentum quantum number check in reading SOC pseudopot file by @AsTonyshment in #6027
- Fix: directly enter exx loop when init_wfc=="file" by @maki49 in #6019
- Fix: DFT+U force&stress with orbital_corr of some elements are -1 by @dyzheng in #6049
- Fix: add the print header for cusolvermp in scf info by @kirk0830 in #6038
- Fix an output for debug by @maki49 in #6066
- Fix: add a check before calculating EXX force by @maki49 in #6067
- Fixing problem for running meta functionals with kinetic energy density mixed by @BariumOxide13716 in #6071
- Fix: modify warning output by @dzzz2001 in #6074
- Fix: Fix the Segmentation fault caused by zero atom case with LCAO basis. by @sunliang98 in #5821
- Fix: add const in module_lr by @maki49 in #5817
- Fix: support negative value in parse_expression by @1041176461 in #5826
- Fix: dmin is replaced by dmax by @haozhihan in #5829
- Fix a bug and a magic number in module_exx_symmetry by @maki49 in #5848
Others
- Refactor:Move the relaxation part of the ucell function by @A-006 in #5767
- Refactor: Remove global dependence of some functions in DeePKS. by @ErjieWu in #5778
- Refactor: decrease uninitialized member values and the risk of memory leaks in abacus by @A-006 in #5755
- Feature: binary format of backup charge density by @YuLiu98 in #5782
- Refactor: Remove some redundant variables and global dependence in DeePKS. by @ErjieWu in #5791
- [Feature] Add col-major encapsulation for blas kernels and add some lacking kernels from blas by @Critsium-xy in #5790
- Feature: enable init_chg=file for metagga by @YuLiu98 in #5792
- Refactor:Remove update_tau_pos in ucell by @A-006 in #5783
- Feature: add nbands_mul for setting multiply for default nbands and fix initial mag for SOC by @dyzheng in #5946
- test: correct INPUT of examples/spin_polarized/ATOM by @pxlxingliang in #5998
- Perf: optimize the stream strategy in module_gint by @dzzz2001 in #5845
- Perf: modify openmp strategy in module_gint by @dzzz2001 in #5898
- Doc: Enhance ocp and ocp_set documentation for clarity and error prevention by @AsTonyshment in #5896
- Docs: update docs about init_wfc by @YuLiu98 in #5912
- Perf: inline function of complexarray by @dzzz2001 in #5964
- Doc: add OpenMPI usage recommendations and fix doc error by @dzzz2001 in #5965
- Test: fix Dockerfile.intel by @pxlxingliang in #5999
- Doc: fix the format by @WHUweiqingzhou in #6008
- Feature: support the default as the value of dft_functional when initialize vdw by @kirk0830 in #5949
- Optimize: Compilation time of vdwd3_autoset_xcparam.cpp by @Qianruipku in #6042
- Perf: openmp for cal_force_stress by @dzzz2001 in #5956
- Perf: optimize cal_DMR and folding_HR by @dzzz2001 in #6068
- update to version 3.10.0 by @dyzheng in #6077
Full Changelog: v3.9.0...LTSv3.10.0
v3.9.0.2
What's Changed
Feature
- Feature: support the
default
as the value ofdft_functional
when initialize vdw by @kirk0830 in #5949 - Feature: Add HR output label for DeePKS. by @ErjieWu in #5968
- Feature: Hybrid functionals for planewave basis by @Flying-dragon-boxing in #5940
- Toolchain 202501 by @QuantumMisaka in #5980
Fix
- Fix: Fix crash in RT-TDDFT current calculation with length gauge when using > 20 MPI processes by @AsTonyshment in #5959
- Fix: Fix segmentation fault in integrate test
312_NO_GO_wfc_get_wf
by @AsTonyshment in #5970 - Fix wavefunction output logic of ks pw by @Cstandardlib in #5974
- Fix: BPCG results not stable when using CUDA AWare MPI by @Qianruipku in #5976
- Fix: One segmentation fault related to EXX PW by @Flying-dragon-boxing in #5993
Refactor
- Delete conv_esolver in esolver, and add 'conv_esolver' as a parameter in iter_finish, after_scf, and update_pot functions by @mohanchen in #5941
- Refactor: before_scf of esolver_fp by @YuLiu98 in #5943
- Refactor: remove useless head files by @Qianruipku in #5945
- Refactor:Modify the output functions in elecstate. by @A-006 in #5954
- Refactor: Remove GlobalV in DeePKS and simplify some functions. by @ErjieWu in #5952
- Update after_scf in ESolver by @mohanchen in #5957
- Update ESolver, delete pelec->charge, instead using chr defined in ESolver_fp directly by @mohanchen in #5963
- Some small updates for the format by @mohanchen in #5972
- Refactor: in ESolver_KS_PW, calculate deband in iter_finish, not in hamilt2density by @Flying-dragon-boxing in #5973
- Refactor: decrease memory cost of get_s by @YuLiu98 in #5979
- Update timer, only print out those timers that consume more than 1% of total time by @mohanchen in #5984
- Refactor:Modify Weights and Ebands Functions in the elecstate Module by @A-006 in #5985
- Update some formats in LCAO_operator and ESolver by @mohanchen in #5987
- Refactor: move psi init to before_all_runners by @YuLiu98 in #5992
- [Refactor] Remove my_math.hpp by @Critsium-xy in #6002
Perf
- Perf: openmp for calaulate_HR in deepks_lcao.cpp by @dzzz2001 in #5937
- Perf: openmp for cal_force_stress by @dzzz2001 in #5956
- Perf: inline function of complexarray by @dzzz2001 in #5964
- Performance: Optimize para_gemm and para_linear_transform by @Qianruipku in #5967
- perf the compute of check_atom_stru and add openmp by @A-006 in #5962
Doc
- Doc: add OpenMPI usage recommendations and fix doc error by @dzzz2001 in #5965
- Fix: Fix a LaTeX rendering issue related to RT-TDDFT parameters in online documentation by @AsTonyshment in #5971
- Doc: polish Quick Start part of online doc by @WHUweiqingzhou in #6006
Test
- [Test] Remove pre-commit bot by @Critsium-xy in #5942
- Tests: Add GPU tests for out_wfc_pw & out_wfc_r by @Cstandardlib in #5989
- Tests: one integrate test for exx pw, only for verifying whether exx pw works by @Flying-dragon-boxing in #5994
- test: correct INPUT of examples/spin_polarized/ATOM by @pxlxingliang in #5998
Full Changelog: v3.9.0.1...v3.9.0.2
v3.9.0.1
What's Changed
Feature
- Feature: binary format of backup charge density by @YuLiu98 in #5782
- [Feature] Add col-major encapsulation for blas kernels and add some lacking kernels from blas by @Critsium-xy in #5790
- Feature: enable init_chg=file for metagga by @YuLiu98 in #5792
- [Feature] Add some GPU kernels to blas_connector by @Critsium-xy in #5799
- feature: parallel solve subspace diagonalization in dav_subspace by @pxlxingliang in #5549
- Feature: Support machine-learning based kinetic energy density functional for OFDFT by @sunliang98 in #5777
- [Feature] Complete all kernels' GPU implement in blas_connector.cpp by @Critsium-xy in #5833
- Feature: Add planewave parallization support for BPCG method by @Cstandardlib in #5849
- [Feature] Add vector_mul_vector, vector_div_vector and vector_add_vector in blas_connector and added some GPU tests. by @Critsium-xy in #5858
- [Feature] Add memory functions using AbacusDevice_t by @Critsium-xy in #5861
- Feature: add para_gemm to do parallel matrix multiply by @Qianruipku in #5870
- RT-TDDFT GPU Acceleration: RT-TD now fully support GPU computation by @AsTonyshment in #5773
- Feature: Make BPCG support band parallelism by @Qianruipku in #5873
- Solving linear equations to evolve the wave function in RT-TDDFT. by @ESROAMER in #5925
- First stage of add DSP FFT by @A-006 in #5878
Fix
- Fix: Reopen UT in HContainer output. by @ErjieWu in #5781
- Fix: correct the typo and format error in doc by @kirk0830 in #5788
- Fix: instable nonlocal pp in uspp by @YuLiu98 in #5798
- Fix: optimize lr_spectrum by @maki49 in #5805
- Fix some compile warnings about esolver by @maki49 in #5807
- Fix: Fix the Segmentation fault caused by zero atom case with LCAO basis. by @sunliang98 in #5821
- Fix: add const in module_lr by @maki49 in #5817
- [Fix] Fix the issue that single precision caculation is not runable on CUDA version by @Critsium-xy in #5825
- Fix: support negative value in parse_expression by @1041176461 in #5826
- Fix: dmin is replaced by dmax by @haozhihan in #5829
- Fix module_container test dependency on DCU by @Cstandardlib in #5838
- fix: memory leak when precision=single by @Qianruipku in #5839
- Fix: use gemm instead of einsum in BPCG by @Cstandardlib in #5827
- Fix a bug and a magic number in module_exx_symmetry by @maki49 in #5848
- Fix: wrong band output when kpar > 1 by @Qianruipku in #5847
- Fix: modify orb info manually by @YuLiu98 in #5853
- Fix the precision loss in
Tensor
output stream operator<<
by @AsTonyshment in #5866 - Fix:modify cheaktau type and add unittest by @A-006 in #5864
- Fix: Output a warning when the lattice vector is left-handed. by @sunliang98 in #5855
- Fix: Fixed a bug in RT-TDDFT where the electric field was not applied starting from the restart step by @AsTonyshment in #5877
- Fix: parse_expression for scientific notation by @1041176461 in #5882
- Fix: Solve mpi bug for DeePKS. by @ErjieWu in #5886
- Fix: Resolve compilation issue with Libxc 7.0.0 in ABACUS by @AsTonyshment in #5905
- Fix: wrong value of nmaxgr by @Qianruipku in #5906
- Fix: incorrect append mode for out_wfc_lcao by @YuLiu98 in #5914
- Fix: Update documentation for
td_lcut
parameter in RT-TDDFT by @AsTonyshment in #5917 - Fix: Add the correct RT-TDDFT electric field force acting on ions by @AsTonyshment in #5918
- Fix the wrong symmetry analysis at nspin=2 by @maki49 in #5926
- fix a bug about hcontainer in exx nscf by @maki49 in #5927
- Fix: useless output by @YuLiu98 in #5928
- Fix: fix cmake bug when USE_CUDA=1 and ENABLE_DEEPKS=1 by @dzzz2001 in #5929
Test
- Restore deepks unit test in gamma-only case and make H_V_delta have full size of Hamiltonian in multi-k case by @xuan112358 in #5785
- delete test print by @A-006 in #5795
- Tests: add checks for opening data files by hsolver tests by @Cstandardlib in #5823
Doc
- Doc: Enhance
ocp
andocp_set
documentation for clarity and error prevention by @AsTonyshment in #5896 - Docs: update docs about init_wfc by @YuLiu98 in #5912
- Update docs related to inputs, scf_thr and ase-abacus by @QuantumMisaka in #5922
Refactor
- Refactor:Move the relaxation part of the ucell function by @A-006 in #5767
- Refactor: Remove global dependence of some functions in DeePKS. by @ErjieWu in #5778
- Refactor: decrease uninitialized member values and the risk of memory leaks in abacus by @A-006 in #5755
- Refactor: Remove some redundant variables and global dependence in DeePKS. by @ErjieWu in #5791
- Refactor:Remove update_tau_pos in ucell by @A-006 in #5783
- Refactor: Enable the support of odd number of electrions in DeepKS orbital by @Liu-RX in #5793
- Refactor: update logic of init_chg by @YuLiu98 in #5801
- Refactor:remove cal_tau from ElecStateLCAO by @A-006 in #5802
- Refactor:Remove Ucell::update_pos_taud by @A-006 in #5794
- Refactor: refactor the constructors of Psi class by @haozhihan in #5761
- Refactor: Remove global dependence of descriptor, orbital_precalc, v_delta_precalc in DeePKS. by @ErjieWu in #5812
- Refactor: modify decimal digit of wfc to 8 by @YuLiu98 in #5820
- Refactor: Remove global dependence in force/stress calculation in DeePKS. by @ErjieWu in #5824
- Refactor: output true external_stress in dp/lj by @YuLiu98 in #5831
- Refactor:remove MPI part funcs of ucell by @A-006 in #5810
- Refactor: Use psi_initializer instead of wavefunc by @Qianruipku in #5775
- Remove TensorMap after cg call in HSolverPW by @Cstandardlib in #5797
- Refactor:Remove the read_atom_species and add read_lattice_constant by @A-006 in #5828
- Refactor: make module_lr/AX a general AO-to-MO transformer by @maki49 in #5834
- Refactor: Remove the global dependence of all remained functions in DeePKS. by @ErjieWu in #5835
- Refactor: Remove LCAO_Deepks from GlobalC. by @ErjieWu in #5844
- Refactor: remove GlobalC::Pkpoint by @Qianruipku in #5846
- Refactor: generalize the transition density matrix in module_lr by @maki49 in #5852
- Update pdm before outputting DeePKS labels by @xuan112358 in #5857
- [Refactor] Rem...