#include "esolver_ks_pw.h"
#include "source_base/global_variable.h"
#include "source_pw/module_pwdft/elecond.h"
#include "source_io/input_conv.h"
#include "source_io/output_log.h"
#include
//--------------temporary----------------------------
#include "source_estate/module_charge/symmetry_rho.h"
#include "source_estate/occupy.h"
#include "source_hamilt/module_ewald/H_Ewald_pw.h"
#include "source_pw/module_pwdft/global.h"
#include "source_io/print_info.h"
//-----force-------------------
#include "source_pw/module_pwdft/forces.h"
//-----stress------------------
#include "source_pw/module_pwdft/stress_pw.h"
//---------------------------------------------------
#include "source_base/memory.h"
#include "source_base/module_device/device.h"
#include "source_estate/elecstate_pw.h"
#include "source_hamilt/module_vdw/vdw.h"
#include "source_pw/module_pwdft/hamilt_pw.h"
#include "source_hsolver/diago_iter_assist.h"
#include "source_hsolver/hsolver_pw.h"
#include "source_hsolver/kernels/dngvd_op.h"
#include "source_base/kernels/math_kernel_op.h"
#include "source_io/berryphase.h"
#include "source_io/numerical_basis.h"
#include "source_io/numerical_descriptor.h"
#include "source_io/to_wannier90_pw.h"
#include "source_io/winput.h"
#include "source_io/write_elecstat_pot.h"
#include "source_io/module_parameter/parameter.h"
#include
#include
#include "source_base/formatter.h"
// mohan add 2025-03-06
#include "source_io/cal_test.h"
namespace ModuleESolver {
template
void ESolver_KS_PW::others(UnitCell& ucell, const int istep)
{
ModuleBase::TITLE("ESolver_KS_PW", "others");
const std::string cal_type = PARAM.inp.calculation;
if (cal_type == "test_memory")
{
Cal_Test::test_memory(ucell.nat,
ucell.ntype,
ucell.GGT,
this->pw_rho,
this->pw_wfc,
this->p_chgmix->get_mixing_mode(),
this->p_chgmix->get_mixing_ndim());
}
else if (cal_type == "gen_bessel")
{
Numerical_Descriptor nc;
nc.output_descriptor(ucell,
this->psi[0],
PARAM.inp.bessel_descriptor_lmax,
PARAM.inp.bessel_descriptor_rcut,
PARAM.inp.bessel_descriptor_tolerence,
this->kv.get_nks());
ModuleBase::GlobalFunc::DONE(GlobalV::ofs_running, "GENERATE DESCRIPTOR FOR DEEPKS");
}
else
{
ModuleBase::WARNING_QUIT("ESolver_KS_PW::others",
"CALCULATION type not supported");
}
return;
}
template class ESolver_KS_PW;
template class ESolver_KS_PW;
#if ((defined __CUDA) || (defined __ROCM))
template class ESolver_KS_PW;
template class ESolver_KS_PW;
#endif
} // namespace ModuleESolver