v3.0.0: Towards AI+DFT
Release Note
This update focuses on new AI-assisted algorithms: the machine learning assisted functional model DeePKS, the feature of generating machine learning atomic interaction potential functions with DP-GEN, and the interface with DeepH which generates Hamiltonian based on machine learning methods. In addition, ABACUS implements new features such as Meta-GGA and Stochastic Density Functional Theory (SDFT). ABACUS has also made significant efficiency optimizations. In addition, a brand-new documentation website will further enhance the user experience.
Feature
- feature: add the output of .cube file in LCAO out_chg calculation by @pxlxingliang in #1310
- Feature: add xc_temperature input keyword for finite T functionals by @wenfei-li in #1227
- feature: output H/S matrix into a sub dir in md calculation by @YuLiu98 in #1258
Test
- test: arrange examples/ and move performance under tests/ by @pxlxingliang in #1241
- test: improve dflow_run.py by @hongriTianqi in #1338
- test: move PP_ORB under tests directory by @hongriTianqi in #1238
Bug fix
- Fix:
std::tuple
used but not included by @caic99 in #1255 - fix: add a space between keyword and value in OUT.XXX/INPUT by @pxlxingliang in #1341
- Fix: add induced charge term to the output of electrostatic potential by @sunml99 in #1265
- Fix: delete some unused INPUT parameters by @pxlxingliang in #1228
- fix: fix the output of fermi energy in charge density when nspin=2 by @pxlxingliang in #1306
- fix: gint bug when distance between atom and grid is exactly the ra… by @wenfei-li in #1246
- Fix: libxc compile flag not added by @caic99 in #1249
- Fix: minor bug in SCAN0 by @ouqi0711 in #1263
- Fix: modified some timer ticks by @dyzheng in #1253
- Fix: modified the warning info for nbands<ncpus by @ouqi0711 in #1219
- fix: no output of STRU_ION file when atoms fixed by @hongriTianqi in #1304
- Fix: nscf with hybrid functional 'hse' or 'pbe0' or 'scan0' by @dyzheng in #1280
- Fix: Remove redundant code for compensation charge module. by @ddhhss in #1259
- Fix: setting of k-points in NSPIN=2 has conflict with Pkpoints in numerical_basis.cpp by @dyzheng in #1224
- Fix: stuck when the specified number of atoms is larger than that listed in coordinate block by @ouqi0711 in #1236
- Merge: Update DFT+U & documentation for DFT+U and Wannier90 interface from abacusmodeling/abacus-develop/develop by @dyzheng in #1326
- Build: add back elpa version check by @caic99 in #1250
- Build: add gcc version check by @caic99 in #1251
- Build: add Libxc version check and docs by @caic99 in #1252
- Build: bump version to 3.0 by @caic99 in #1278
- Build: Make ABACUS-PW.x able to be compiled without LCAO by @Qianruipku in #1271
- Build: revise some typos by @Qianruipku in #1322
- Build: Rewrite Makefile by @Qianruipku in #1293
- Build: won't download libxc on absent. by @caic99 in #1312
- Combination of dipole correction and compensating charge by @YuLiu98 in #1248
- dflow: strip possible && at end of env_cmd by @hongriTianqi in #1346
- wflow: fix a bug in dflow_run.py by @hongriTianqi in #1334
- wflow: improve dflow_run.py by @hongriTianqi in #1332
- workflow: add dflow script for examples by @hongriTianqi in #1329
Documentation
Our developers have elaborately prepared the all-new documentation website. Please refer to the "Full Changelog" part for changes on documentation.
Refactor
- refactor : absorb 'INPUTs ' into INPUT when generating DeePKS projectors by @wenfei-li in #1244
- refactor: add allocateRho func in elecstate module by @hongriTianqi in #1266
- refactor: add the output of lacked INPUT parameters in OUT.XXX/INPUT by @pxlxingliang in #1232
- Refactor: delete the useless INPUT parameters restart_mode and test_just_neighbor by @pxlxingliang in #1233
- Refactor: Remove the global variable
global_pseudo_type
. by @sunliang98 in #1247 - refactor:in the diago of dav, modify to diagonalize the subspace only on rank0 by @pxlxingliang in #1221