mirror of
https://github.com/triqs/dft_tools
synced 2024-11-07 06:33:48 +01:00
Added orbital labels to 'proj_params'
When PROJCAR is read it assigns the orbitals by their corresponding labels. These labels are now added to the dictionary 'proj_params'. Although they are not used currently they can be handy when it comes to identifying the character of the orbitals. Also, the order of orbital labels for p- and d-orbitals was changed to conform to the convention of the old PROCAR file.
This commit is contained in:
parent
63eb4c2089
commit
bf34d968cc
@ -91,7 +91,7 @@ class Plocar:
|
|||||||
Returns projector parameters (site/orbital indices etc.) and an array
|
Returns projector parameters (site/orbital indices etc.) and an array
|
||||||
with projectors.
|
with projectors.
|
||||||
"""
|
"""
|
||||||
orb_labels = ["s", "pz", "px", "py", "dz2", "dxz", "dyz", "dx2-y2", "dxy",
|
orb_labels = ["s", "py", "pz", "px", "dxy", "dyz", "dz2", "dxz", "dx2-y2",
|
||||||
"fz3", "fxz2", "fyz2", "fz(x2-y2)", "fxyz", "fx(x2-3y2)", "fy(3x2-y2)"]
|
"fz3", "fxz2", "fyz2", "fz(x2-y2)", "fxyz", "fx(x2-3y2)", "fy(3x2-y2)"]
|
||||||
|
|
||||||
def lm_to_l_m(lm):
|
def lm_to_l_m(lm):
|
||||||
@ -117,6 +117,7 @@ class Plocar:
|
|||||||
for il in xrange(norb):
|
for il in xrange(norb):
|
||||||
ip_new = iproj_site * norb + il
|
ip_new = iproj_site * norb + il
|
||||||
ip_prev = (iproj_site - 1) * norb + il
|
ip_prev = (iproj_site - 1) * norb + il
|
||||||
|
proj_params[ip_new]['label'] = proj_params[ip_prev]['label']
|
||||||
proj_params[ip_new]['isite'] = isite
|
proj_params[ip_new]['isite'] = isite
|
||||||
proj_params[ip_new]['l'] = proj_params[ip_prev]['l']
|
proj_params[ip_new]['l'] = proj_params[ip_prev]['l']
|
||||||
proj_params[ip_new]['m'] = proj_params[ip_prev]['m']
|
proj_params[ip_new]['m'] = proj_params[ip_prev]['m']
|
||||||
@ -134,6 +135,7 @@ class Plocar:
|
|||||||
l, m = lm_to_l_m(lm)
|
l, m = lm_to_l_m(lm)
|
||||||
|
|
||||||
# For the first read 'iproj_site = 0' and only orbital index 'il' is used
|
# For the first read 'iproj_site = 0' and only orbital index 'il' is used
|
||||||
|
proj_params[il]['label'] = label
|
||||||
proj_params[il]['isite'] = isite
|
proj_params[il]['isite'] = isite
|
||||||
proj_params[il]['l'] = l
|
proj_params[il]['l'] = l
|
||||||
proj_params[il]['m'] = m
|
proj_params[il]['m'] = m
|
||||||
|
Loading…
Reference in New Issue
Block a user