forked from abacusmodeling/abacus-develop
-
Notifications
You must be signed in to change notification settings - Fork 145
Feature: Hybrid functionals for planewave basis #5940
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
mohanchen
merged 135 commits into
deepmodeling:develop
from
Flying-dragon-boxing:exx_pw
Mar 10, 2025
Merged
Changes from 121 commits
Commits
Show all changes
135 commits
Select commit
Hold shift + click to select a range
69ad6a7
feat pexsi
zhangzh-pku 3c57992
fix : diag not completed
zhangzh-pku 7326a00
Merge branch 'deepmodeling:develop' into develop
zhangzh-pku c3babb7
feat
zhangzh-pku 43d743d
feat: pexsi hsolver
zhangzh-pku 51e4df2
Merge branch 'deepmodeling:develop' into develop
zhangzh-pku ef1ff1a
CMake building implemented
Flying-dragon-boxing 48c03ab
Merge remote-tracking branch 'upstream/develop' into develop
Flying-dragon-boxing 2529afe
Works
Flying-dragon-boxing 09da6b1
adapt to the new container
Flying-dragon-boxing f52bd99
Turn off USE_PEXSI
Flying-dragon-boxing 682d19b
Update LibRI to 553c91c
Flying-dragon-boxing a5ea7e1
Merge remote-tracking branch into develop
Flying-dragon-boxing 90f600e
modify include files
Flying-dragon-boxing 3d8c366
namespace-ize
Flying-dragon-boxing 8075b14
new inputs added
Flying-dragon-boxing 1e428d2
Configure Makefile Compiling, fix typos
Flying-dragon-boxing 1264b64
Fix Makefile Intel toolchains compile errors
Flying-dragon-boxing a694146
Fix even more PEXSI related Makefile compiling issues
Flying-dragon-boxing 4c4bd76
Merge remote-tracking branch 'upstream/develop' into modify_inputs
Flying-dragon-boxing cd3a028
Modify inputs and update to latest version (#2)
Flying-dragon-boxing 6aa019c
Revert "Modify inputs and update to latest version"
Flying-dragon-boxing 7561bfa
Merge pull request #3 from Flying-dragon-boxing/revert-2-modify_inputs
Flying-dragon-boxing 3202786
Merge pull request #4 from Flying-dragon-boxing/modify_inputs
Flying-dragon-boxing c4c5272
Update FindPEXSI.cmake to fix Comments
Flying-dragon-boxing f3e18a4
Fix CI errors
Flying-dragon-boxing 4d16f56
Fix CI Errors and Merge with Upstream
Flying-dragon-boxing 86217fd
Merge branch 'develop' into develop
Flying-dragon-boxing 4857553
Resolve Pull Request Reviews
Flying-dragon-boxing 89ff055
Merge branch 'develop' into develop
Flying-dragon-boxing 494c661
Merge remote-tracking branch 'origin/develop' into develop
Flying-dragon-boxing 70d68d9
Fix parallel communication related issue
Flying-dragon-boxing c0066fe
Merge branch 'develop' into develop
Flying-dragon-boxing 5b4a6cf
Fix vars in Makefile.vars, add input tests and comments for pexsi vars
Flying-dragon-boxing 43ca04b
Merge branch 'develop' into develop
Flying-dragon-boxing 493f713
Fix nspin > 1 cases
Flying-dragon-boxing c7efb18
Merge remote-tracking branch 'origin/develop' into develop
Flying-dragon-boxing 7f4e526
Merge branch 'develop' into develop
Flying-dragon-boxing 26685cd
Improvement: take calculated mu as new initial guess, may slightly im…
Flying-dragon-boxing 2cf6773
Fix mistakes in the last commit
Flying-dragon-boxing 7298c41
Fix: params and features
Flying-dragon-boxing 9ee7aec
Merge branch 'develop' into develop
Flying-dragon-boxing ce18c08
fix empty lines
Flying-dragon-boxing c4d86a4
Fix: move params to pexsi_solver, rename USE_PEXSI to ENABLE_PEXSI
Flying-dragon-boxing 5b406b9
Merge branch 'develop' into develop
Flying-dragon-boxing 569f68d
Tests: Modify Dockerfile and GitHub Workflows
Flying-dragon-boxing 7f0d06c
Fix: wrong abacus link for dockerfile
Flying-dragon-boxing b33a37b
Docs: added docs for pexsi inputs
Flying-dragon-boxing 13d3e84
Merge pull request #6 from Flying-dragon-boxing/develop
Flying-dragon-boxing 80ce12b
Tests: three tests added for pexsi
Flying-dragon-boxing 8da04fc
Merge branch 'develop' into develop
Flying-dragon-boxing b5ad8af
Merge branch 'develop' into develop
Flying-dragon-boxing 0829198
Merge branch 'develop' into develop
Flying-dragon-boxing 6521241
Merge branch 'modify_tests' into modify_tests_2
Flying-dragon-boxing 8e8598f
Merge pull request #8 from Flying-dragon-boxing/modify_tests_2
Flying-dragon-boxing 94ff925
Fix unit test issues in input_conv
Flying-dragon-boxing b0d9c30
Merge pull request #9 from Flying-dragon-boxing/develop
Flying-dragon-boxing a97b563
Very good unit test, making my laptop fan spin
Flying-dragon-boxing 11f0a12
Change default pexsi_npole from 80 to 40
Flying-dragon-boxing fd19b2c
Place pexsi_EDM in DensityMatrix, set size of pexsi_dm = 1 when Globa…
Flying-dragon-boxing 5572872
Merge pull request #10 from Flying-dragon-boxing/develop
Flying-dragon-boxing aec57c0
An unit test added for DiagoPexsi
Flying-dragon-boxing a4efc59
Merge branch 'develop' into develop
mohanchen 2167ba5
Merge branch 'develop' into develop
Flying-dragon-boxing 70f9a54
modify for changed gint interface
Flying-dragon-boxing e7088f7
Merge pull request #11 from Flying-dragon-boxing/develop
Flying-dragon-boxing 5a891f7
correct nspin related behaviors
Flying-dragon-boxing d7b402d
add efermi passthrough
Flying-dragon-boxing 76774f6
Revert "add efermi passthrough"
Flying-dragon-boxing 9f8532a
Merge branch 'develop' into resolve_conflict
Flying-dragon-boxing 9e8c724
commits to resolve conversations related to codes
Flying-dragon-boxing 569269b
DM and EDM pointers in pexsi now handled by diagopexsi, and copying h…
Flying-dragon-boxing f8352cb
add pexsi examples
Flying-dragon-boxing b0ef9ad
fix pexsi unit test (original version shouldn't run)
Flying-dragon-boxing 5b53d6f
add building docs for pexsi
Flying-dragon-boxing 3e5fea8
Merge branch 'develop' into resolve_conflict
Flying-dragon-boxing 69b774a
Merge branch 'develop' into resolve_conflict
Flying-dragon-boxing 110e5b0
set cxx standard to c++14, which is required in make_unique
Flying-dragon-boxing 1ced552
Merge branch 'develop' into resolve_conflict
Flying-dragon-boxing e874a84
Merge branch 'develop' into resolve_conflict
Flying-dragon-boxing 696d01c
Merge branch 'develop' into resolve_conflict
mohanchen 04db1c1
Merge branch 'develop' into resolve_conflict
WHUweiqingzhou 29f1efc
Merge branch 'develop' into resolve_conflict
mohanchen 2a0b367
Merge pull request #12 from deepmodeling/develop
Flying-dragon-boxing a832159
Merge pull request #13 from Flying-dragon-boxing/resolve_conflict
Flying-dragon-boxing d1b62c4
Merge pull request #15 from deepmodeling/develop
Flying-dragon-boxing 20cb2ae
Fix: Fix typo related to pexsi
Flying-dragon-boxing 5308568
update to PPEXSIDFTDriver2
Flying-dragon-boxing 8d75717
default npoints to 1, so single core pexsi will work
Flying-dragon-boxing 8306447
Feature: exx operator for pw basis, single kpt
Flying-dragon-boxing dcad001
apply pexsi changes(?)
Flying-dragon-boxing b9e9844
q-e style exx_div
Flying-dragon-boxing cda67e6
Correct exxdiv
Flying-dragon-boxing dc367da
Merge pull request #16 from deepmodeling/develop
Flying-dragon-boxing c8b7221
Fix Compile errors
Flying-dragon-boxing aa6dc7d
refactor to abandon `pdiagh`
Flying-dragon-boxing 7ee641a
Merge branch 'develop' into develop
Flying-dragon-boxing a05f3a6
Fix mu_buffer and nspin
Flying-dragon-boxing b92e6c5
Merge branch 'develop' into develop
Flying-dragon-boxing 58a2297
HSE examples
Flying-dragon-boxing 1f97745
Feature: Multi-K exx
Flying-dragon-boxing f672456
Feature: Multi-K exx
Flying-dragon-boxing 998b19f
Updates with latest
Flying-dragon-boxing bd474b2
Merge branch 'develop' of https://github.com/deepmodeling/abacus-deve…
Flying-dragon-boxing c1626f4
Updates with latest
Flying-dragon-boxing 140e361
Remove redundant global vars
Flying-dragon-boxing 8bad499
Merge remote-tracking branch 'upstream/develop' into exx_pw
Flying-dragon-boxing 69beb4c
Update to v3.9.0
Flying-dragon-boxing 3405c7a
Update to v3.9.0, now code works
Flying-dragon-boxing d4e3bf9
Merge remote-tracking branch 'upstream/develop' into exx_pw
Flying-dragon-boxing a6aa3c7
Remove Redundant cal_exx_energy in esolver_ks_pw.cpp
Flying-dragon-boxing d9ed5b9
Some mess
Flying-dragon-boxing 988b2ef
Minor Fixes
Flying-dragon-boxing 1ecbb09
Fix separate loop and screening
Flying-dragon-boxing 323e05c
Add EXX stress
Flying-dragon-boxing 247ab5c
EXX Energy???
Flying-dragon-boxing eb8e92a
Multi-K is broken???
Flying-dragon-boxing 6de3f9d
Fix: Multi-K and stress
Flying-dragon-boxing 2e742a2
Feature: ACE for single-K
Flying-dragon-boxing 08d92dd
Feature: ACE should work for multi-K, but not for sure
Flying-dragon-boxing 1c6c47e
Feature: ACE works. Next step is ACE energy.
Flying-dragon-boxing 412df28
Merge branch 'develop' into exx_pw
Flying-dragon-boxing 36b7f71
Fix: adapt to the latest instruction for variable `conv_esolver`
Flying-dragon-boxing 155f47a
Reconstruct: move exx_helper to hamilt_pwdft
Flying-dragon-boxing 4ce66ba
Fix: Now EXX PW doesn't depend on LibRI
Flying-dragon-boxing f8ea0ed
Fix: Add input constraints for EXX PW
Flying-dragon-boxing a8b7af0
Fix: Remove redundant mpi barrier
Flying-dragon-boxing 8178ff2
Fix: Clean irrelevant files
Flying-dragon-boxing eaac855
Fix: Clean irrelevant files
Flying-dragon-boxing 5fb70bb
Feature: add ace flag, exit on using gpu
Flying-dragon-boxing 56e4cc5
Refactor: Phase 1 for refactoring exx energy
Flying-dragon-boxing 3d6ab83
Feature: now ace calculates energy
Flying-dragon-boxing 1edd234
Feature: enable exx energy
Flying-dragon-boxing 6b9280c
Merge branch 'develop' into exx_pw
Flying-dragon-boxing 6728fd2
Fix: fix makefile compilation error
Flying-dragon-boxing File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,32 @@ | ||
| INPUT_PARAMETERS | ||
| pseudo_dir ../../../tests/PP_ORB | ||
| orbital_dir ../../../tests/PP_ORB | ||
| nbands 4 | ||
| nspin 1 | ||
| calculation scf | ||
| basis_type pw | ||
| ks_solver dav | ||
| ecutwfc 50 | ||
| scf_thr 1e-9 | ||
| scf_nmax 100 | ||
| gamma_only 0 | ||
| symmetry -1 | ||
| smearing_method fixed | ||
| mixing_type broyden | ||
| mixing_beta 0.7 | ||
|
|
||
| dft_functional pbe0 | ||
|
|
||
| # init_wfc file | ||
| # init_chg file | ||
|
|
||
| pseudo_mesh 1 | ||
| pseudo_rcut 10 | ||
|
|
||
| # out_wfc_pw 1 | ||
| # out_chg 1 | ||
|
|
||
| exx_hybrid_alpha 0.25 | ||
|
|
||
| cal_stress 1 | ||
| # cal_force 1 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,4 @@ | ||
| K_POINTS | ||
| 0 | ||
| Gamma | ||
| 3 3 3 0 0 0 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,24 @@ | ||
| ATOMIC_SPECIES | ||
| Si 1 Si_ONCV_PBE_FR-1.1.upf #Pseudopotentials are downloaded from http://www.quantum-simulation.org/potentials/sg15_oncv/upf/ | ||
|
|
||
| NUMERICAL_ORBITAL | ||
| orb_Si.dat | ||
|
|
||
| LATTICE_CONSTANT | ||
| 1.889766 | ||
|
|
||
| LATTICE_VECTORS | ||
| 0.0 2.708337 2.708337 | ||
| 2.708337 0.0 2.708337 | ||
| 2.708337 2.708337 0.0 | ||
|
|
||
|
|
||
|
|
||
| ATOMIC_POSITIONS | ||
| Direct | ||
|
|
||
| Si | ||
| 0 | ||
| 2 | ||
| 0.125 0.125 0.125 0 0 0 | ||
| 0.875 0.875 0.875 0 0 0 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,26 @@ | ||
| #include "e_exx_pw.h" | ||
|
|
||
| namespace elecstate | ||
| { | ||
|
|
||
| double E_exx::exx_energy = 0.0; | ||
|
|
||
| E_exx::E_exx() | ||
| { | ||
| } | ||
|
|
||
| E_exx::~E_exx() | ||
| { | ||
| } | ||
|
|
||
| double E_exx::cal_exx(const ModulePW::PW_Basis_K* wfcpw, | ||
| const ModulePW::PW_Basis* rhopw, | ||
| const int* isk, | ||
| const double* const* const rho, | ||
| const double& Eexx) | ||
| { | ||
| double exx = 0.0; | ||
| return exx; | ||
| } | ||
|
|
||
| } // namespace elecstate |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,31 @@ | ||
| #ifndef E_EXX_PW_H | ||
| #define E_EXX_PW_H | ||
|
|
||
| #include "module_basis/module_pw/pw_basis.h" | ||
| #include "module_basis/module_pw/pw_basis_k.h" | ||
|
|
||
| namespace elecstate | ||
| { | ||
|
|
||
| class E_exx | ||
| { | ||
| public: | ||
| E_exx(); | ||
| ~E_exx(); | ||
|
|
||
| static double cal_exx(const ModulePW::PW_Basis_K* wfcpw, | ||
| const ModulePW::PW_Basis* rhopw, | ||
| const int* isk, | ||
| const double* const* const rho, | ||
| const double& Eexx); | ||
|
|
||
| static double get_exx_energy() { return exx_energy; } | ||
|
|
||
| private: | ||
| static double exx_energy; | ||
|
|
||
| }; | ||
|
|
||
| } // namespace elecstate | ||
|
|
||
| #endif // E_EXX_PW_H |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -26,6 +26,7 @@ add_library( | |
| esolver | ||
| OBJECT | ||
| ${objects} | ||
| module_exx_helper/exx_helper.cpp | ||
| ) | ||
|
|
||
| if(ENABLE_COVERAGE) | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.