Skip to content

Commit 266fc51

Browse files
authored
Merge branch 'develop' into ccp_framework
2 parents c54228e + 9ac5750 commit 266fc51

File tree

395 files changed

+977
-546
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

395 files changed

+977
-546
lines changed

docs/CONTRIBUTING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ For those who are interested in the source code, the following figure shows the
5757
|-- module_elecstate The module for defining the electronic state and its operations.
5858
| |-- module_charge The module for calculating the charge density, charge mixing
5959
| |-- potentials The module for calculating the potentials, including Hartree, exchange-correlation, local pseudopotential, etc.
60-
|-- module_esolver The module defining task-specific driver of corresponding workflow for evaluating energies, forces, etc., including lj, dp, ks, sdft, ofdft, etc.
60+
|-- source_esolver The module defining task-specific driver of corresponding workflow for evaluating energies, forces, etc., including lj, dp, ks, sdft, ofdft, etc.
6161
| | TDDFT, Orbital-free DFT, etc.
6262
|-- module_hamilt_general The module for defining general Hamiltonian that can be used both in PW and LCAO calculations.
6363
| |-- module_ewald The module for calculating the Ewald summation.
@@ -77,7 +77,7 @@ For those who are interested in the source code, the following figure shows the
7777
| |-- hamilt_pwdft The module for defining the Hamiltonian in PW-DFT calculations.
7878
| | |-- operator_pw The module for defining the operators in PW-DFT calculations.
7979
| `-- hamilt_stodft The module for defining the Hamiltonian in STODFT calculations.
80-
|-- module_hsolver The module for solving the Hamiltonian with different diagonalization methods, including CG, Davidson in PW
80+
|-- source_hsolver The module for solving the Hamiltonian with different diagonalization methods, including CG, Davidson in PW
8181
| | calculations, and scalapack and genelpa in LCAO calculations.
8282
|-- module_io The module for reading of INPUT files and output properties including band structure, density of states, charge density, etc.
8383
|-- module_md The module for performing molecular dynamics.

docs/advanced/acceleration/cuda.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ In ABACUS, we provide the option to use GPU devices to accelerate performance. T
1212

1313
- **Parallel strategy**: K point parallel.
1414

15-
Unlike PW basis, only the grid integration module (module_gint) and the diagonalization of the Hamiltonian matrix (module_hsolver) have been implemented with GPU acceleration under LCAO basis.
15+
Unlike PW basis, only the grid integration module (module_gint) and the diagonalization of the Hamiltonian matrix (source_hsolver) have been implemented with GPU acceleration under LCAO basis.
1616

1717
## Required hardware/software
1818

docs/advanced/input_files/input-main.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,7 @@
134134
- [Output Variables](#variables-related-to-output-information)
135135
- [out\_freq\_elec](#out_freq_elec)
136136
- [out\_chg](#out_chg)
137+
- [out\_xc\_r](#out_xc_r)
137138
- [out\_pot](#out_pot)
138139
- [out\_dm](#out_dmk)
139140
- [out\_dm1](#out_dmr)
@@ -1652,6 +1653,25 @@ These variables are used to control the output of properties.
16521653
- **Default**: 0 3
16531654
- **Note**: In the 3.10-LTS version, the file names are SPIN1_CHG.cube and SPIN1_CHG_INI.cube, etc.
16541655

1656+
### out_xc_r
1657+
1658+
- **Type**: Integer \[Integer\](optional)
1659+
- **Description**:
1660+
The first integer controls whether to output the exchange-correlation (in Bohr^-3) on real space grids using Libxc to folder `OUT.${suffix}`:
1661+
- 0: rho, amag, sigma, exc
1662+
- 1: vrho, vsigma
1663+
- 2: v2rho2, v2rhosigma, v2sigma2
1664+
- 3: v3rho3, v3rho2sigma, v3rhosigma2, v3sigma3
1665+
- 4: v4rho4, v4rho3sigma, v4rho2sigma2, v4rhosigma3, v4sigma4
1666+
The meaning of the files is presented in [Libxc](https://libxc.gitlab.io/manual/libxc-5.1.x/)
1667+
1668+
The second integer controls the precision of the charge density output, if not given, will use `3` as default.
1669+
1670+
---
1671+
The circle order of the charge density on real space grids is: x is the outer loop, then y and finally z (z is moving fastest).
1672+
1673+
- **Default**: -1 3
1674+
16551675
### out_pot
16561676

16571677
- **Type**: Integer

python/pyabacus/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ find_package(pybind11 CONFIG REQUIRED)
1414
set(ABACUS_SOURCE_DIR "${PROJECT_SOURCE_DIR}/../../source")
1515
set(BASE_PATH "${ABACUS_SOURCE_DIR}/module_base")
1616
set(NAO_PATH "${ABACUS_SOURCE_DIR}/module_basis/module_nao")
17-
set(HSOLVER_PATH "${ABACUS_SOURCE_DIR}/module_hsolver")
17+
set(HSOLVER_PATH "${ABACUS_SOURCE_DIR}/source_hsolver")
1818
set(PSI_PATH "${ABACUS_SOURCE_DIR}/module_psi")
1919
set(ENABLE_LCAO ON)
2020
list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/../../cmake")

python/pyabacus/CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ find_package(pybind11 CONFIG REQUIRED)
7474
set(ABACUS_SOURCE_DIR "${PROJECT_SOURCE_DIR}/../../source")
7575
set(BASE_PATH "${ABACUS_SOURCE_DIR}/module_base")
7676
set(NAO_PATH "${ABACUS_SOURCE_DIR}/module_basis/module_nao")
77-
set(HSOLVER_PATH "${ABACUS_SOURCE_DIR}/module_hsolver")
77+
set(HSOLVER_PATH "${ABACUS_SOURCE_DIR}/source_hsolver")
7878
set(PSI_PATH "${ABACUS_SOURCE_DIR}/module_psi")
7979
set(ENABLE_LCAO ON)
8080
list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/../../cmake")

python/pyabacus/src/hsolver/py_diago_cg.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
#include <ATen/core/tensor_map.h>
1515
#include <ATen/core/tensor_types.h>
1616

17-
#include "module_hsolver/diago_cg.h"
17+
#include "source_hsolver/diago_cg.h"
1818
#include "module_base/module_device/memory_op.h"
1919

2020
namespace py = pybind11;

python/pyabacus/src/hsolver/py_diago_dav_subspace.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
#include <pybind11/numpy.h>
1111
#include <pybind11/stl.h>
1212

13-
#include "module_hsolver/diago_dav_subspace.h"
13+
#include "source_hsolver/diago_dav_subspace.h"
1414

1515
namespace py = pybind11;
1616

python/pyabacus/src/hsolver/py_diago_david.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
#include <pybind11/numpy.h>
1111
#include <pybind11/stl.h>
1212

13-
#include "module_hsolver/diago_david.h"
13+
#include "source_hsolver/diago_david.h"
1414

1515
namespace py = pybind11;
1616

python/pyabacus/src/hsolver/py_hsolver.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
#include <pybind11/complex.h>
66
#include <pybind11/numpy.h>
77

8-
#include "module_hsolver/diago_dav_subspace.h"
8+
#include "source_hsolver/diago_dav_subspace.h"
99
#include "module_base/kernels/math_kernel_op.h"
1010
#include "module_base/module_device/types.h"
1111

source/CMakeLists.txt

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@ add_subdirectory(module_elecstate)
55
add_subdirectory(module_hamilt_general)
66
add_subdirectory(module_hamilt_pw)
77
add_subdirectory(module_hamilt_lcao)
8-
add_subdirectory(module_hsolver)
8+
add_subdirectory(source_hsolver)
99
add_subdirectory(module_basis/module_ao)
1010
add_subdirectory(module_basis/module_nao)
1111
add_subdirectory(module_md)
1212
add_subdirectory(module_basis/module_pw)
13-
add_subdirectory(module_esolver)
13+
add_subdirectory(source_esolver)
1414
add_subdirectory(module_hamilt_lcao/module_gint)
1515
add_subdirectory(module_io)
1616
add_subdirectory(module_relax)
@@ -35,8 +35,8 @@ list(APPEND device_srcs
3535
module_hamilt_pw/hamilt_pwdft/kernels/meta_op.cpp
3636
module_hamilt_pw/hamilt_stodft/kernels/hpsi_norm_op.cpp
3737
module_basis/module_pw/kernels/pw_op.cpp
38-
module_hsolver/kernels/dngvd_op.cpp
39-
module_hsolver/kernels/bpcg_kernel_op.cpp
38+
source_hsolver/kernels/dngvd_op.cpp
39+
source_hsolver/kernels/bpcg_kernel_op.cpp
4040
module_elecstate/kernels/elecstate_op.cpp
4141

4242
# module_psi/kernels/psi_memory_op.cpp
@@ -65,8 +65,8 @@ if(USE_CUDA)
6565
module_hamilt_pw/hamilt_stodft/kernels/cuda/hpsi_norm_op.cu
6666
module_hamilt_pw/hamilt_pwdft/kernels/cuda/onsite_op.cu
6767
module_basis/module_pw/kernels/cuda/pw_op.cu
68-
module_hsolver/kernels/cuda/dngvd_op.cu
69-
module_hsolver/kernels/cuda/bpcg_kernel_op.cu
68+
source_hsolver/kernels/cuda/dngvd_op.cu
69+
source_hsolver/kernels/cuda/bpcg_kernel_op.cu
7070
module_elecstate/kernels/cuda/elecstate_op.cu
7171

7272
# module_psi/kernels/cuda/memory_op.cu
@@ -92,8 +92,8 @@ if(USE_ROCM)
9292
module_hamilt_pw/hamilt_pwdft/kernels/rocm/onsite_op.hip.cu
9393
module_hamilt_pw/hamilt_stodft/kernels/rocm/hpsi_norm_op.hip.cu
9494
module_basis/module_pw/kernels/rocm/pw_op.hip.cu
95-
module_hsolver/kernels/rocm/dngvd_op.hip.cu
96-
module_hsolver/kernels/rocm/bpcg_kernel_op.hip.cu
95+
source_hsolver/kernels/rocm/dngvd_op.hip.cu
96+
source_hsolver/kernels/rocm/bpcg_kernel_op.hip.cu
9797
module_elecstate/kernels/rocm/elecstate_op.hip.cu
9898

9999
# module_psi/kernels/rocm/memory_op.hip.cu

0 commit comments

Comments
 (0)