#include <elecond.h>
|
| EleCond (UnitCell *p_ucell_in, K_Vectors *p_kv_in, elecstate::ElecState *p_elec_in, ModulePW::PW_Basis_K *p_wfcpw_in, psi::Psi< std::complex< FPTYPE >, Device > *p_psi_in, pseudopot_cell_vnl *p_ppcell_in) |
|
| ~EleCond () |
|
void | KG (const int &smear_type, const double &fwhmin, const double &wcut, const double &dw_in, const double &dt_in, const bool &nonlocal, ModuleBase::matrix &wg) |
| calculate Onsager coefficients Lmn(\omega) and conductivities with Kubo-Greenwood formula
|
|
|
void | jjresponse_ks (const int ik, const int nt, const double dt, const double decut, ModuleBase::matrix &wg, hamilt::Velocity< FPTYPE, Device > &velop, double *ct11, double *ct12, double *ct22) |
| calculate the response function Cmn(t) for currents
|
|
void | calcondw (const int nt, const double dt, const int &smear_type, const double fwhmin, const double wcut, const double dw_in, double *ct11, double *ct12, double *ct22) |
| Calculate the conductivity using the response function.
|
|
◆ delmem_complex_op
template<typename FPTYPE , typename Device >
◆ resmem_complex_op
template<typename FPTYPE , typename Device >
◆ syncmem_complex_d2h_op
template<typename FPTYPE , typename Device >
◆ EleCond()
template<typename FPTYPE , typename Device >
◆ ~EleCond()
template<typename FPTYPE , typename Device >
◆ calcondw()
template<typename FPTYPE , typename Device >
void EleCond< FPTYPE, Device >::calcondw |
( |
const int |
nt, |
|
|
const double |
dt, |
|
|
const int & |
smear_type, |
|
|
const double |
fwhmin, |
|
|
const double |
wcut, |
|
|
const double |
dw_in, |
|
|
double * |
ct11, |
|
|
double * |
ct12, |
|
|
double * |
ct22 |
|
) |
| |
|
protected |
Calculate the conductivity using the response function.
- Parameters
-
nt | number of time steps |
dt | time step |
smear_type | smearing type 1: gaussian, 2: lorentzian |
fwhmin | full width at half maximum of the smearing function |
wcut | cutoff frequency |
dw_in | frequency step |
ct11 | C11 component of the response function |
ct12 | C12 component of the response function |
ct22 | C22 component of the response function |
◆ jjresponse_ks()
template<typename FPTYPE , typename Device >
void EleCond< FPTYPE, Device >::jjresponse_ks |
( |
const int |
ik, |
|
|
const int |
nt, |
|
|
const double |
dt, |
|
|
const double |
decut, |
|
|
ModuleBase::matrix & |
wg, |
|
|
hamilt::Velocity< FPTYPE, Device > & |
velop, |
|
|
double * |
ct11, |
|
|
double * |
ct12, |
|
|
double * |
ct22 |
|
) |
| |
|
protected |
calculate the response function Cmn(t) for currents
- Parameters
-
ik | k point |
nt | number of steps of time |
dt | time step |
decut | ignore dE which is larger than decut |
wg | wg(ik,ib) occupation for the ib-th band in the ik-th kpoint |
velop | velocity operator |
ct11 | C11(t) |
ct12 | C12(t) |
ct22 | C22(t) |
◆ KG()
template<typename FPTYPE , typename Device >
void EleCond< FPTYPE, Device >::KG |
( |
const int & |
smear_type, |
|
|
const double & |
fwhmin, |
|
|
const double & |
wcut, |
|
|
const double & |
dw_in, |
|
|
const double & |
dt_in, |
|
|
const bool & |
nonlocal, |
|
|
ModuleBase::matrix & |
wg |
|
) |
| |
calculate Onsager coefficients Lmn(\omega) and conductivities with Kubo-Greenwood formula
- Parameters
-
fwhmin | FWHM for delta function |
smear_type | 1: Gaussian, 2: Lorentzian |
wcut | cutoff \omega for Lmn(\omega) |
dw_in | \omega step |
dt_in | time step |
nonlocal | whether to include the nonlocal potential corrections for velocity operator |
wg | wg(ik,ib) occupation for the ib-th band in the ik-th kpoint |
◆ p_elec
template<typename FPTYPE , typename Device >
pointer to the electronic state
◆ p_kv
template<typename FPTYPE , typename Device >
◆ p_ppcell
template<typename FPTYPE , typename Device >
pointer to the pseudopotential
◆ p_psi
template<typename FPTYPE , typename Device >
psi::Psi<std::complex<FPTYPE>, Device>* EleCond< FPTYPE, Device >::p_psi = nullptr |
|
protected |
pointer to the wavefunction
◆ p_ucell
template<typename FPTYPE , typename Device >
◆ p_wfcpw
template<typename FPTYPE , typename Device >
pointer to the plane wave basis
The documentation for this class was generated from the following files:
- /home/runner/work/abacus-develop/abacus-develop/source/source_pw/module_pwdft/elecond.h
- /home/runner/work/abacus-develop/abacus-develop/source/source_pw/module_pwdft/elecond.cpp