1#ifndef ESOLVER_KS_LCAO_TDDFT_H
2#define ESOLVER_KS_LCAO_TDDFT_H
14template <
typename TR,
typename Device = base_device::DEVICE_CPU>
Definition esolver_ks_lcao_tddft.h:16
ct::Tensor Sk_laststep
Overlap matrix for all k-points of last time step.
Definition esolver_ks_lcao_tddft.h:49
void store_h_s_psi(UnitCell &ucell, const int istep, const int iter, const bool conv_esolver)
Definition esolver_ks_lcao_tddft.cpp:411
~ESolver_KS_LCAO_TDDFT()
Definition esolver_ks_lcao_tddft.cpp:42
module_rt::TD_MovingGauge * td_mg_
Definition esolver_ks_lcao_tddft.h:70
bool use_td_moving_gauge
Moving spatial gauge for Ehrenfest dynamics, to calculate the correction term arising from the moveme...
Definition esolver_ks_lcao_tddft.h:69
virtual void hamilt2rho_single(UnitCell &ucell, const int istep, const int iter, const double ethr) override
Definition esolver_ks_lcao_tddft.cpp:257
void iter_finish(UnitCell &ucell, const int istep, const int estep, const int estep_max, int &iter, bool &conv_esolver)
Definition esolver_ks_lcao_tddft.cpp:356
CublasMpResources cublas_res
Definition esolver_ks_lcao_tddft.h:54
bool restart_done
Restart flag.
Definition esolver_ks_lcao_tddft.h:73
virtual void runner(UnitCell &cell, const int istep) override
run energy solver
Definition esolver_ks_lcao_tddft.cpp:95
void print_step()
Definition esolver_ks_lcao_tddft.cpp:249
psi::Psi< std::complex< double > > * psi_laststep
Wave function for all k-points of last time step.
Definition esolver_ks_lcao_tddft.h:43
void weight_dm_rho(const UnitCell &ucell)
Definition esolver_ks_lcao_tddft.cpp:578
static constexpr ct::DeviceType ct_device_type_hs
Definition esolver_ks_lcao_tddft.h:58
Velocity_op< TR > * velocity_mat
Velocity matrix for calculating current.
Definition esolver_ks_lcao_tddft.h:64
ESolver_KS_LCAO_TDDFT()
Definition esolver_ks_lcao_tddft.cpp:24
virtual void after_scf(UnitCell &ucell, const int istep, const bool conv_esolver) override
Something to do after SCF iterations when SCF is converged or comes to the max iter step.
Definition esolver_ks_lcao_tddft.cpp:545
bool use_tensor
Control heterogeneous computing of the TDDFT solver.
Definition esolver_ks_lcao_tddft.h:52
TD_info * td_p
Definition esolver_ks_lcao_tddft.h:66
ct::Tensor Hk_laststep
Hamiltonian for all k-points of last time step.
Definition esolver_ks_lcao_tddft.h:46
bool use_lapack
Definition esolver_ks_lcao_tddft.h:53
void before_all_runners(UnitCell &ucell, const Input_para &inp) override
Initialize of the first-principels energy solver.
Definition esolver_ks_lcao_tddft.cpp:67
int totstep
Total steps for evolving the wave function.
Definition esolver_ks_lcao_tddft.h:61
Definition esolver_ks_lcao.h:33
bool conv_esolver
Definition esolver.h:48
Definition mock_tdinfo.cpp:4
Definition velocity_op.h:15
A multi-dimensional array of elements of a single data type.
Definition tensor.h:32
Definition td_moving_gauge.h:17
The First-Principles (FP) Energy Solver Class.
Definition opt_test_tools.cpp:93
DeviceType
The type of memory used by an allocator.
Definition tensor_types.h:73
Definition cublasmp_context.h:38