Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions source/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -572,6 +572,7 @@ add_subdirectory(source_esolver)
add_subdirectory(source_io)
add_subdirectory(source_relax)
add_subdirectory(source_lcao/module_ri)
add_subdirectory(source_lcao/module_rpa)
add_subdirectory(source_io/module_parameter)
add_subdirectory(source_lcao/module_lr)
add_subdirectory(source_lcao/module_rdmft) # add by jghan
Expand Down Expand Up @@ -800,6 +801,9 @@ if(ENABLE_MLALGO)
endif()
if(ENABLE_LIBRI)
target_link_libraries(${ABACUS_BIN_NAME} PRIVATE ri module_exx_symmetry)
if(ENABLE_LCAO)
target_link_libraries(${ABACUS_BIN_NAME} PRIVATE rpa librpa_io)
endif()
endif()
if(ENABLE_JSON)
target_link_libraries(${ABACUS_BIN_NAME} PRIVATE json_output)
Expand Down
5 changes: 4 additions & 1 deletion source/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,9 @@ endif
ifdef LIBRI_DIR
INCLUDES += -I${LIBRI_DIR}/include
INCLUDES += -I${LIBCOMM_DIR}/include
INCLUDES += -I${ABACUS_ROOT}source_lcao/module_ri
INCLUDES += -I${ABACUS_ROOT}source_lcao/module_rpa
INCLUDES += -I${ABACUS_ROOT}source_lcao/module_rpa/module_librpa_io
HONG += -DUSE_LIBRI
HONG += -D__EXX -DEXX_H_COMM=2 -DEXX_DM=3 -DTEST_EXX_LCAO=0 -DTEST_EXX_RADIAL=1
endif
Expand Down Expand Up @@ -241,7 +244,7 @@ HONG += -D__SELINV -DMETIS

ifeq ($(MPI), ON)
ifdef LIBRI_DIR
OBJS_ABACUS += $(OBJS_MODULE_RI) $(OBJS_BSE) ${OBJS_SRC_RI}
OBJS_ABACUS += $(OBJS_MODULE_RI) $(OBJS_MODULE_RPA) $(OBJS_BSE) ${OBJS_SRC_RI}
endif
endif

Expand Down
11 changes: 9 additions & 2 deletions source/Makefile.Objects
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,8 @@ VPATH=./src_global:\
./src_ri:\
./source_lcao/module_ri:\
./source_lcao/module_ri/module_exx_symmetry:\
./source_lcao/module_rpa:\
./source_lcao/module_rpa/module_librpa_io:\
./source_lcao/module_bse:\
./source_io/module_parameter:\
./source_io/module_efield:\
Expand Down Expand Up @@ -857,9 +859,12 @@ OBJS_MODULE_RI=conv_coulomb_pot_k.o\
gaussian_abfs.o\
exx_lri_detail.o\
ri_util.o\
rpa_lri.o\
singular_value.o\

OBJS_MODULE_RPA=rpa_lri.o\
rpa_lri_detail.o\
rpa_lri_band_io.o\
rpa_lri_coeff_v1.o\
rpa_lri_mpi_layout.o\
rpa_lri_wfc_mpi.o\
rpa_lri_bz_io.o\
Expand All @@ -870,12 +875,14 @@ OBJS_MODULE_RI=conv_coulomb_pot_k.o\
rpa_lri_output.o\
rpa_lri_bz.o\
rpa_lri_sym.o\
librpa_bz_sampling.o\
librpa_stru_symmetry.o\
librpa_stru_units.o\
rpa_lri_coeff_io.o\
rpa_lri_velocity.o\
rpa_lri_basis.o\
rpa_lri_eigenvector_v1.o\
rpa_lri_eigenvector.o\
singular_value.o\

OBJS_BSE=esolver_lr_lcao_bse.o\
hamilt_bse.o\
Expand Down
2 changes: 1 addition & 1 deletion source/source_io/module_ctrl/ctrl_scf_lcao.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
#endif
#ifdef __EXX
#include "source_lcao/module_ri/exx_lri_interface.h" // use EXX codes
#include "source_lcao/module_ri/rpa_lri.h" // use RPA code
#include "source_lcao/module_rpa/rpa_lri.h" // use RPA code
#endif
#include "../module_qo/to_qo.h" // use toQO
#include "source_lcao/module_rdmft/rdmft.h" // use RDMFT codes
Expand Down
19 changes: 0 additions & 19 deletions source/source_lcao/module_ri/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -23,25 +23,6 @@ if (ENABLE_LIBRI)
singular_value.cpp
exx_lri_detail.cpp
ri_util.cpp
rpa_lri.cpp
rpa_lri_detail.cpp
rpa_lri_band_io.cpp
rpa_lri_coeff_v1.cpp
rpa_lri_bz_io.cpp
rpa_lri_mpi_layout.cpp
rpa_lri_wfc_mpi.cpp
rpa_lri_coulomb.cpp
rpa_lri_coulomb_io.cpp
rpa_lri_overlap.cpp
rpa_lri_overlap_io.cpp
rpa_lri_output.cpp
rpa_lri_bz.cpp
rpa_lri_sym.cpp
rpa_lri_coeff_io.cpp
rpa_lri_velocity.cpp
rpa_lri_basis.cpp
rpa_lri_eigenvector_v1.cpp
rpa_lri_eigenvector.cpp
)
endif()
add_library(
Expand Down
69 changes: 0 additions & 69 deletions source/source_lcao/module_ri/rpa_lri_sym.cpp

This file was deleted.

10 changes: 0 additions & 10 deletions source/source_lcao/module_ri/unittests/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,5 @@ AddTest(
LIBS parameter
SOURCES test_abfs_vector3_order.cpp
)
AddTest(
TARGET MODULE_RI_rpa_lri_detail_test
LIBS parameter base device
SOURCES test_rpa_lri_detail.cpp ../rpa_lri_detail.cpp ../rpa_lri_coeff_v1.cpp ../rpa_lri_bz_io.cpp
)
AddTest(
TARGET MODULE_RI_rpa_lri_band_io_test
LIBS parameter base device
SOURCES test_rpa_lri_band_io.cpp ../rpa_lri_band_io.cpp
)
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/support"
DESTINATION "${CMAKE_CURRENT_BINARY_DIR}")
42 changes: 42 additions & 0 deletions source/source_lcao/module_rpa/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
if(NOT ENABLE_LIBRI OR NOT ENABLE_LCAO)
return()
endif()

add_subdirectory(module_librpa_io)

add_library(rpa OBJECT
rpa_lri.cpp
rpa_lri_detail.cpp
rpa_lri_band_io.cpp
rpa_lri_coeff_v1.cpp
rpa_lri_bz_io.cpp
rpa_lri_mpi_layout.cpp
rpa_lri_wfc_mpi.cpp
rpa_lri_coulomb.cpp
rpa_lri_coulomb_io.cpp
rpa_lri_overlap.cpp
rpa_lri_overlap_io.cpp
rpa_lri_output.cpp
rpa_lri_bz.cpp
rpa_lri_sym.cpp
rpa_lri_coeff_io.cpp
rpa_lri_velocity.cpp
rpa_lri_basis.cpp
rpa_lri_eigenvector_v1.cpp
rpa_lri_eigenvector.cpp
)
target_include_directories(rpa PRIVATE
${ABACUS_SOURCE_DIR}
${ABACUS_SOURCE_DIR}/source_lcao/module_ri
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/module_librpa_io
)
target_link_libraries(rpa PRIVATE ri librpa_io)

if(BUILD_TESTING AND ENABLE_MPI)
add_subdirectory(unittests)
endif()

if(ENABLE_COVERAGE)
add_coverage(rpa)
endif()
13 changes: 13 additions & 0 deletions source/source_lcao/module_rpa/module_librpa_io/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
add_library(librpa_io OBJECT
librpa_bz_sampling.cpp
librpa_stru_symmetry.cpp
librpa_stru_units.cpp
)
target_include_directories(librpa_io PUBLIC
${ABACUS_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}
)

if(BUILD_TESTING AND ENABLE_MPI)
add_subdirectory(unittests)
endif()
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#include "librpa_bz_sampling.h"

#include "source_base/constants.h"

#include <cmath>
#include <stdexcept>

namespace RpaLriDetail
{
ModuleBase::Vector3<double> librpa_cartesian_kvec(const ModuleBase::Vector3<double>& kvec_c, const double lat0_bohr)
{
if (!std::isfinite(lat0_bohr) || lat0_bohr <= 0.0)
{
throw std::invalid_argument("LibRPA BZ output requires a positive lattice constant.");
}
return kvec_c * (ModuleBase::TWO_PI / lat0_bohr);
}
} // namespace RpaLriDetail
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#ifndef LIBRPA_BZ_SAMPLING_H
#define LIBRPA_BZ_SAMPLING_H

#include "source_base/vector3.h"

namespace RpaLriDetail
{
ModuleBase::Vector3<double> librpa_cartesian_kvec(const ModuleBase::Vector3<double>& kvec_c,
double lat0_bohr);
} // namespace RpaLriDetail

#endif
Loading
Loading