[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/pplab/abacus-develop/develop/source/source_esolver/pw_others.cpp [Back]  [Original]

#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

Web Proxy Viewer  |  New URL  |  Original Page