quasiparticle interference (QPI) simulation. Author: Philipp Ruessmann Deprecated: False For details on the quasiparticle interference technique and it's implementation see chapter 4 of the PhD thesis of Philipp Ruessmann which is available here: http://epflicht.ulb.uni-bonn.de/urn/urn:nbn:de:hbz:5:2-162838
W r i t e
t h e
m e s h
t o
f i l e
f o r
t h e
u s e
i n
t h e
Q P I - t o o l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nofks |
number of points in irreducible BZ |
||
integer, | intent(in), | dimension(3) | :: | nxyz |
original k-mesh net in the 3 directions of the reciprocal lattice vectors (not xyz directions) |
|
real(kind=dp), | intent(in) | :: | volbz |
volume of the BZ |
||
real(kind=dp), | intent(in), | dimension(3, nofks) | :: | bzkp |
k-point mesh |
|
real(kind=dp), | intent(in), | dimension(nofks) | :: | volcub |
Weight of the k-points |
|
real(kind=dp), | intent(in), | dimension(3, 3) | :: | recbv |
Reciprocal basis vectors |
|
real(kind=dp), | intent(in), | dimension(3, 3) | :: | bravais |
Bravais lattice vectors |
R e a d
i n f o r m a t i o n
a b o u t
s c a n n i n g
p o s i t i o n
o f
t h e
Q P I - t o o l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(inout), | allocatable | :: | iatomimp(:) |
layer indices |
|
integer, | intent(out) | :: | mu |
scannning position (mu0 in PhD Ruessmann) |
||
integer, | intent(out) | :: | nscoef |
number of layers in the impurity cluster |
||
integer, | intent(out) | :: | imin |
smalles layer index of impurity cluster |
F i n d
m a s k
o f
n e c e s s a r y
p o i n t s
f o r
t h e
Q P I - t o o l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nofks |
number of k-points |
||
integer, | intent(out) | :: | k_end |
number of k-points after filtering |
||
real(kind=dp), | intent(in) | :: | bzkp(3,nofks) |
k-points array |
||
integer, | intent(out), | allocatable | :: | kmask(:) |
kmask array labelling points (either inside or outside of masked region) |
|
real(kind=dp), | intent(out), | allocatable | :: | rhoq_kmask(:,:) |
output array holding kpoints and indices in reduced region only |
S a v e
d e p e n d e n t
G F
t o
f i l e
f o r
t h e
Q P I - t o o l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nscoef |
number of layers in imp. cluster |
||
real(kind=dp), | intent(in) | :: | rhoq_kmask(5,k_end) |
mask and mapping array of reduced k-point set |
||
integer, | intent(in) | :: | kpt |
kpoint index |
||
integer, | intent(in) | :: | k_end |
number of kpoints to be stored |
||
real(kind=dp), | intent(in) | :: | kp(3) |
kpoint |
||
integer, | intent(in) | :: | i |
atom index i |
||
integer, | intent(in) | :: | j |
atom index j |
||
integer, | intent(in) | :: | mu |
scanning position (mu0) |
||
integer, | intent(in) | :: | imin |
minimal layer index |
||
integer, | intent(in) | :: | iatomimp(nscoef) |
layer indices of imp. cluster |
||
integer, | intent(in) | :: | lmmaxd |
lm-size of GF matrices |
||
complex(kind=dp), | intent(in) | :: | g(lmmaxd,lmmaxd) |
structural GF (of pair i,j, and k-point) |
W r i t e
o u t
s c a t t e r i n g
p a t h
o p e r a t o r
t o
f o r t . 9 9 0 0 9 9
a n d
f o r t
9 9 8 8 8 8
f i l e s
f o r
t h e
Q P I - t o o l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nofks | |||
integer, | intent(in) | :: | nshell | |||
integer, | intent(in) | :: | nsh1(nshell) | |||
integer, | intent(in) | :: | nsh2(nshell) | |||
integer, | intent(in) | :: | nsymat | |||
integer, | intent(in) | :: | nscoef | |||
integer, | intent(in) | :: | mu | |||
integer, | intent(in) | :: | iatomimp(nscoef) | |||
integer, | intent(inout), | allocatable | :: | kmask(:) | ||
integer, | intent(in) | :: | lmmaxd | |||
real(kind=dp), | intent(in) | :: | bzkp(3,nofks) | |||
integer, | intent(in) | :: | imin |
W r i t e
t h e
r a d i a l
m e s h
i n f o r m a t i o n
t o
f i l e
f o r
Q P I - t o o l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | natyp | |||
integer, | intent(in) | :: | irmd | |||
integer, | intent(in) | :: | ipand | |||
integer, | intent(in) | :: | irmin(natyp) | |||
integer, | intent(in) | :: | irws(natyp) | |||
integer, | intent(in) | :: | ipan(natyp) | |||
real(kind=dp), | intent(in) | :: | rmesh(irmd,natyp) | |||
integer, | intent(in) | :: | ntcell(natyp) | |||
integer, | intent(in) | :: | ircut(0:ipand,natyp) | |||
real(kind=dp), | intent(in) | :: | r_log | |||
integer, | intent(in) | :: | npan_log | |||
integer, | intent(in) | :: | npan_eq |
S a v e
t h e
r e f e r e n c e
p o t e n t i a l s
t o
a n
u n f o r m a t t e d
f i l e f o r
t h e
Q P I - t o o l
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | ielast | |||
integer, | intent(in) | :: | i1 | |||
integer, | intent(in) | :: | nref | |||
integer, | intent(in) | :: | natyp | |||
integer, | intent(in) | :: | refpot(natyp) | |||
integer, | intent(in) | :: | wlength | |||
integer, | intent(in) | :: | lmmaxd | |||
integer, | intent(in) | :: | ie | |||
complex(kind=dp), | intent(in) | :: | trefll(lmmaxd,lmmaxd,natyp) |