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
10#include "source_base/vector3.h"
13#include "source_psi/psi.h"
14
16{
17 public:
20 std::complex<double> unkdotp_G(const ModulePW::PW_Basis_K* wfcpw,
21 const int ik_L,
22 const int ik_R,
23 const int iband_L,
24 const int iband_R,
25 const psi::Psi<std::complex<double>>* evc);
26 std::complex<double> unkdotp_G0(const ModulePW::PW_Basis* rhopw,
27 const ModulePW::PW_Basis_K* wfcpw,
28 const int ik_L,
29 const int ik_R,
30 const int iband_L,
31 const int iband_R,
32 const psi::Psi<std::complex<double>>* evc,
34 std::complex<double> unkdotp_soc_G(const ModulePW::PW_Basis_K* wfcpw,
35 const int ik_L,
36 const int ik_R,
37 const int iband_L,
38 const int iband_R,
39 const int npwx,
40 const psi::Psi<std::complex<double>>* evc);
41 std::complex<double> unkdotp_soc_G0(const ModulePW::PW_Basis* rhopw,
42 const ModulePW::PW_Basis_K* wfcpw,
43 const int ik_L,
44 const int ik_R,
45 const int iband_L,
46 const int iband_R,
47 const psi::Psi<std::complex<double>>* evc,
49
50 // this function just for test the class unkOverlap_pw that is works successful.
52
53 // std::complex<double> unkdotp_R(int ik_L, int ik_R, int iband_L, int iband_R, ModuleBase::ComplexMatrix *evc);
54 // std::complex<double> g00(int ik_R, int ik_L, int ib_L, int ib_R, double x, double y, double z,
55 // ModuleBase::ComplexMatrix *evc);
56};
57
58#endif
3 elements vector
Definition vector3.h:24
Special pw_basis class. It includes different k-points.
Definition pw_basis_k.h:56
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:16
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:119
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:13
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:171
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:60
~unkOverlap_pw()
Definition unk_overlap_pw.cpp:9
void test_for_unkOverlap_pw()
unkOverlap_pw()
Definition unk_overlap_pw.cpp:5