From a6f2f8888389a36d2af792ea325b2c720fe8fe79 Mon Sep 17 00:00:00 2001 From: YuLiu98 Date: Thu, 16 Nov 2023 16:49:53 +0800 Subject: [PATCH 1/2] Refactor: PW_Basis_Big inherits from PW_Basis_Sup --- source/module_basis/module_pw/pw_basis.h | 4 ++-- source/module_basis/module_pw/pw_basis_big.h | 6 ++++-- source/module_basis/module_pw/pw_basis_sup.cpp | 3 +-- source/module_basis/module_pw/pw_basis_sup.h | 1 - source/module_esolver/esolver.cpp | 6 +++--- source/module_esolver/esolver_fp.cpp | 4 ++-- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/source/module_basis/module_pw/pw_basis.h b/source/module_basis/module_pw/pw_basis.h index 9d45d4ff581..3aaf7c5eaf2 100644 --- a/source/module_basis/module_pw/pw_basis.h +++ b/source/module_basis/module_pw/pw_basis.h @@ -293,5 +293,5 @@ class PW_Basis } #endif // PWBASIS_H -#include "./pw_basis_big.h" //temporary it will be removed -#include "pw_basis_sup.h" \ No newline at end of file +#include "pw_basis_sup.h" +#include "pw_basis_big.h" //temporary it will be removed \ No newline at end of file diff --git a/source/module_basis/module_pw/pw_basis_big.h b/source/module_basis/module_pw/pw_basis_big.h index 3ed89578625..ad254fb4367 100644 --- a/source/module_basis/module_pw/pw_basis_big.h +++ b/source/module_basis/module_pw/pw_basis_big.h @@ -12,7 +12,7 @@ namespace ModulePW { -class PW_Basis_Big: public PW_Basis +class PW_Basis_Big : public PW_Basis_Sup { public: // combine [bx,by,bz] FFT grids into a big one @@ -21,7 +21,9 @@ class PW_Basis_Big: public PW_Basis PW_Basis_Big() { } - PW_Basis_Big(std::string device_, std::string precision_) : PW_Basis(device_, precision_) {} + PW_Basis_Big(std::string device_, std::string precision_) : PW_Basis_Sup(device_, precision_) + { + } ~PW_Basis_Big(){}; void setbxyz(const int bx_in, const int by_in, const int bz_in) diff --git a/source/module_basis/module_pw/pw_basis_sup.cpp b/source/module_basis/module_pw/pw_basis_sup.cpp index 74b142669ca..67526e906a8 100644 --- a/source/module_basis/module_pw/pw_basis_sup.cpp +++ b/source/module_basis/module_pw/pw_basis_sup.cpp @@ -1,6 +1,5 @@ -#include "pw_basis_sup.h" - #include "module_base/timer.h" +#include "pw_basis.h" namespace ModulePW { diff --git a/source/module_basis/module_pw/pw_basis_sup.h b/source/module_basis/module_pw/pw_basis_sup.h index 28f07829719..1a093e86450 100644 --- a/source/module_basis/module_pw/pw_basis_sup.h +++ b/source/module_basis/module_pw/pw_basis_sup.h @@ -2,7 +2,6 @@ #define PWBASIS_SUP_H #include "module_base/complexmatrix.h" -#include "pw_basis.h" namespace ModulePW { diff --git a/source/module_esolver/esolver.cpp b/source/module_esolver/esolver.cpp index 914c6de0fe5..336ed32b1b4 100644 --- a/source/module_esolver/esolver.cpp +++ b/source/module_esolver/esolver.cpp @@ -88,11 +88,11 @@ namespace ModuleESolver } } if (GlobalV::MY_RANK == 0) { - std::cout << " RUNNING WITH DEVICE : " << device_info << " / " + std::cout << " RUNNING WITH DEVICE : " << device_info << " / " << psi::device::get_device_info(GlobalV::device_flag) << std::endl; } - GlobalV::ofs_running << "\n RUNNING WITH DEVICE : " << device_info << " / " - << psi::device::get_device_info(GlobalV::device_flag) << std::endl; + GlobalV::ofs_running << "\n RUNNING WITH DEVICE : " << device_info << " / " + << psi::device::get_device_info(GlobalV::device_flag) << std::endl; return esolver_type; } diff --git a/source/module_esolver/esolver_fp.cpp b/source/module_esolver/esolver_fp.cpp index 3770efda852..4b6d2f4e806 100644 --- a/source/module_esolver/esolver_fp.cpp +++ b/source/module_esolver/esolver_fp.cpp @@ -12,7 +12,7 @@ namespace ModuleESolver if (GlobalV::double_grid) { - pw_rhod = new ModulePW::PW_Basis_Sup(GlobalV::device_flag, GlobalV::precision_flag); + pw_rhod = new ModulePW::PW_Basis_Big(GlobalV::device_flag, GlobalV::precision_flag); } else { @@ -20,7 +20,7 @@ namespace ModuleESolver } //temporary, it will be removed - pw_big = static_cast(pw_rho); + pw_big = static_cast(pw_rhod); pw_big->setbxyz(INPUT.bx, INPUT.by, INPUT.bz); sf.set(pw_rhod, INPUT.nbspline); From c1ee2f45a5208053f0507a599ee4464cb8dcfcdc Mon Sep 17 00:00:00 2001 From: YuLiu98 Date: Thu, 16 Nov 2023 18:39:04 +0800 Subject: [PATCH 2/2] Test: update unittest --- source/module_basis/module_pw/test/test-big.cpp | 2 +- source/module_elecstate/test/elecstate_base_test.cpp | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/source/module_basis/module_pw/test/test-big.cpp b/source/module_basis/module_pw/test/test-big.cpp index 2503057fb81..a000a4b1172 100644 --- a/source/module_basis/module_pw/test/test-big.cpp +++ b/source/module_basis/module_pw/test/test-big.cpp @@ -53,7 +53,7 @@ TEST_F(PWTEST,test_big) pwktest.initgrids(lat0,latvec, pwtest.nx, pwtest.ny, pwtest.nz); pwtest.initparameters(gamma_only,wfcecut,distribution_type,xprime); pwktest.initparameters(gamma_only,wfcecut,nks,kvec_d,distribution_type, xprime); - pwtest.setuptransform(); + static_cast(pwtest).setuptransform(); pwktest.setuptransform(); EXPECT_EQ(pwtest.nx%2, 0); EXPECT_EQ(pwtest.ny%2, 0); diff --git a/source/module_elecstate/test/elecstate_base_test.cpp b/source/module_elecstate/test/elecstate_base_test.cpp index b2b1294a55d..2f5ee12e6df 100644 --- a/source/module_elecstate/test/elecstate_base_test.cpp +++ b/source/module_elecstate/test/elecstate_base_test.cpp @@ -41,6 +41,9 @@ ModulePW::PW_Basis::PW_Basis() ModulePW::PW_Basis::~PW_Basis() { } +ModulePW::PW_Basis_Sup::~PW_Basis_Sup() +{ +} ModulePW::FFT::FFT() { }