ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
unk_overlap_pw.h
Go to the documentation of this file.
1#ifndef UNKOVERLAP_PW
2#define UNKOVERLAP_PW
3
4#include <cmath>
5#include <complex>
6#include <fstream>
7#include <string>
8
12#include "source_base/vector3.h"
15#include "source_psi/psi.h"
16
18{
19 public:
22 std::complex<double> unkdotp_G(const ModulePW::PW_Basis_K* wfcpw,
23 const int ik_L,
24 const int ik_R,
25 const int iband_L,
26 const int iband_R,
27 const psi::Psi<std::complex<double>>* evc);
28 std::complex<double> unkdotp_G0(const ModulePW::PW_Basis* rhopw,
29 const ModulePW::PW_Basis_K* wfcpw,
30 const int ik_L,
31 const int ik_R,
32 const int iband_L,
33 const int iband_R,
34 const psi::Psi<std::complex<double>>* evc,
36 std::complex<double> unkdotp_soc_G(const ModulePW::PW_Basis_K* wfcpw,
37 const int ik_L,
38 const int ik_R,
39 const int iband_L,
40 const int iband_R,
41 const int npwx,
42 const psi::Psi<std::complex<double>>* evc);
43 std::complex<double> unkdotp_soc_G0(const ModulePW::PW_Basis* rhopw,
44 const ModulePW::PW_Basis_K* wfcpw,
45 const int ik_L,
46 const int ik_R,
47 const int iband_L,
48 const int iband_R,
49 const psi::Psi<std::complex<double>>* evc,
51
52 // this function just for test the class unkOverlap_pw that is works successful.
54
55 // std::complex<double> unkdotp_R(int ik_L, int ik_R, int iband_L, int iband_R, ModuleBase::ComplexMatrix *evc);
56 // std::complex<double> g00(int ik_R, int ik_L, int ib_L, int ib_R, double x, double y, double z,
57 // ModuleBase::ComplexMatrix *evc);
58};
59
60#endif
3 elements vector
Definition vector3.h:22
Special pw_basis class. It includes different k-points.
Definition pw_basis_k.h:57
A class which can convert a function of "r" to the corresponding linear superposition of plane waves ...
Definition pw_basis.h:56
Definition psi.h:37
Definition unk_overlap_pw.h:18
std::complex< double > unkdotp_soc_G(const ModulePW::PW_Basis_K *wfcpw, const int ik_L, const int ik_R, const int iband_L, const int iband_R, const int npwx, const psi::Psi< std::complex< double > > *evc)
Definition unk_overlap_pw.cpp:120
std::complex< double > unkdotp_G(const ModulePW::PW_Basis_K *wfcpw, const int ik_L, const int ik_R, const int iband_L, const int iband_R, const psi::Psi< std::complex< double > > *evc)
Definition unk_overlap_pw.cpp:14
std::complex< double > unkdotp_soc_G0(const ModulePW::PW_Basis *rhopw, const ModulePW::PW_Basis_K *wfcpw, const int ik_L, const int ik_R, const int iband_L, const int iband_R, const psi::Psi< std::complex< double > > *evc, const ModuleBase::Vector3< double > G)
Definition unk_overlap_pw.cpp:172
std::complex< double > unkdotp_G0(const ModulePW::PW_Basis *rhopw, const ModulePW::PW_Basis_K *wfcpw, const int ik_L, const int ik_R, const int iband_L, const int iband_R, const psi::Psi< std::complex< double > > *evc, const ModuleBase::Vector3< double > G)
Definition unk_overlap_pw.cpp:61
~unkOverlap_pw()
Definition unk_overlap_pw.cpp:10
void test_for_unkOverlap_pw()
unkOverlap_pw()
Definition unk_overlap_pw.cpp:6