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
Write the k-mesh to file for the use in the QPI-tool
| 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 |
Read information about scanning position of the QPI-tool
| 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 |
Find mask of necessary k-points for the QPI-tool
| 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 |
Save k-dependent GF to file for the QPI-tool
| 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) |
Write out scattering path operator to fort.990099 and fort 998888 files for the QPI-tool
| 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 |
Write the radial mesh information to file for QPI-tool
| 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 |
Save the reference potentials to an unformatted filefor the QPI-tool
| 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) |