XPS: Difference between revisions

From Wiki
Jump to navigation Jump to search
Rgarcia (talk | contribs)
Rgarcia (talk | contribs)
No edit summary
 
(9 intermediate revisions by 3 users not shown)
Line 4: Line 4:
==General workflow==  
==General workflow==  


in preparation (currently just a sketch)
An XPS calculation is a single ionic step calculation, and involves the explicit computation of core levels for '''one''' selected atom in the POSCAR.


An XPS calculation is a single ionic step calculation, and involves the explicit computation of core levels for ONE selected atom in the POSCAR.  
* For a converged structure select a single atom for which the core levels shifts will be calculated. Let us suppose that you are interested in the second Pd atom in this POSCAR:
(...)
  Pd  In    O
  4    80    119
(...)


* For a converged structure select a single atom for which the core levels shifts will be calculated (link to gli script to be added).  
* The atom(s) for which the XPS will be calculated should be separated: 
(...)
  Pd  '''Pd'''  Pd  In    O
  1  '''1'''  2    80    119
(...)


* Create two separate subdirectries, (for example ./xps0 and ./xps1) and copy the the desired POSCAR to both.  
* Create two separate subdirectories, (for example ./xps0 and ./xps1) and copy the modified POSCAR to both.  


* Copy the files corresponding to your typical setup to "xps0"
* Create a new pseudopotential file.
 
* Copy the KPOINTS and INCAR files of your typical setup to "xps0" and "xps1". Dipole corrections and ionic movements must be turned off. ISPIN must be turned to 2. It is recommended to deactivate vdW. Comment all parallelization flags to use the default:
  ISPIN  =  2      #
# LDIPOL  =  F 
# IDIPOL  =  3 
  IBRION  = -1 
  NSW    =  1 


* In "xps0", insert tags for XPS calculation to INCAR:
* In "xps0", insert tags for XPS calculation to INCAR:
    ISPIN = 2          # Always put this flag.
  ICORELEVEL = 1     # State before excitation XPS.
    ICORELEVEL = 0     # State before excitation XPS
# CLNT = 2           # species in POSCAR, second in the example.
  #CLNT = 3           # atom type POSCAR; in this case third species in the POSCAR
# CLN  = 3          # main quantum number (3d ==> N=3).
  #CLN  = 3          # main quantum number (3d ==> N=3)  
# CLL  = 2          # l quantum number; s=0, p=1, d=2,...   
  #CLL  = 2          # l quantum number; s=0, p=1, d=2,...   
# CLZ  = 1          # number of electrons to be displaced. Do not use 0.5.   
  #CLZ  = 1          # number of electrons to be displaced. Do not use 0.5.   
  NELECT=           # Put the same number of electrons from a normal calculation.  
    NELEC=             # Put the same number of electrons from a normal calculation.  


* After the job is completed:
* After the job is completed:
   grep ENTOT OUTCAR # let's call this value E0
   grep TOTEN OUTCAR | tail -n 1 # let's call this value E0
 
* Copy the job files from "xps0" to "xps1"


* Replace tags for XPS calculation with:
* In parallel, insert tags for XPS calculation to INCAR of xps1:  
    ISPIN = 2          # Always put this flag.
  ICORELEVEL = 2    # final state approximation (fss, with electron exitation).
    ICORELEVEL = 2    # final state approximation (fss, with electron exitation).
   CLNT = 2           # species in POSCAR, second in the example.
   #ICORELEVEL = 1    # initial state approx. (iss, without electron excitation).
  CLN  = 3          # main quantum number (3d ==> N=3).
    CLNT = 3           # atom type POSCAR; in this case third species in the POSCAR.  
  CLL  = 2          # l quantum number; s=0, p=1, d=2,...   
    CLN  = 3          # main quantum number (3d ==> N=3)  
  CLZ  = 1          # number of electrons to be displaced. Do not use 0.5.     
    CLL  = 2          # l quantum number; s=0, p=1, d=2,...   
  NELECT=           # For fss, put an additional electron. For iss, don't.   
    CLZ  = 1          # number of electrons to be displaced. Do not use 0.5.     
    NELEC=             # For fss, put an additional electron. For iss, don't.   


* After the job is completed:  
* After the job is completed:  
   grep ENTOT OUTCAR # let's call this value E1
   grep TOTEN OUTCAR | tail -n 1 # let's call this value E1


* The XPS shift (Exps) can be calculated as:  
* The XPS shift (Exps) can be calculated as:  
Line 45: Line 55:




Alternatively:


compute just ICORELEVEL=2 with one positive charge in the system, then reference the core level energy (grep 3d OUTCAR #for the example above) to vacuum energy. (will elaborate in next edit)


==Additional information==
[[Media:Overview.pdf]] (by Nathan)
[[Media:Overview.pdf]] (by Nathan)

Latest revision as of 17:35, 11 January 2022

go back to Main Page, Group Pages, Núria López and Group


General workflow[edit]

An XPS calculation is a single ionic step calculation, and involves the explicit computation of core levels for one selected atom in the POSCAR.

  • For a converged structure select a single atom for which the core levels shifts will be calculated. Let us suppose that you are interested in the second Pd atom in this POSCAR:
(...)
 Pd   In     O 
 4    80    119 
(...) 
  • The atom(s) for which the XPS will be calculated should be separated:
(...)
 Pd  Pd  Pd   In     O 
 1   1   2    80    119 
(...)
  • Create two separate subdirectories, (for example ./xps0 and ./xps1) and copy the modified POSCAR to both.
  • Create a new pseudopotential file.
  • Copy the KPOINTS and INCAR files of your typical setup to "xps0" and "xps1". Dipole corrections and ionic movements must be turned off. ISPIN must be turned to 2. It is recommended to deactivate vdW. Comment all parallelization flags to use the default:
  ISPIN   =  2       #
# LDIPOL  =  F  
# IDIPOL  =  3  
  IBRION  = -1  
  NSW     =  1   
  • In "xps0", insert tags for XPS calculation to INCAR:
  ICORELEVEL = 1     # State before excitation XPS.
# CLNT = 2           # species in POSCAR, second in the example.
# CLN  = 3           # main quantum number (3d ==> N=3). 
# CLL  = 2           # l quantum number; s=0, p=1, d=2,...  
# CLZ  = 1           # number of electrons to be displaced. Do not use 0.5.  
  NELECT=            # Put the same number of electrons from a normal calculation. 
  • After the job is completed:
 grep TOTEN OUTCAR | tail -n 1 # let's call this value E0
  • In parallel, insert tags for XPS calculation to INCAR of xps1:
  ICORELEVEL = 2     # final state approximation (fss, with electron exitation).
  CLNT = 2           # species in POSCAR, second in the example.
  CLN  = 3           # main quantum number (3d ==> N=3).
  CLL  = 2           # l quantum number; s=0, p=1, d=2,...  
  CLZ  = 1           # number of electrons to be displaced. Do not use 0.5.    
  NELECT=            # For fss, put an additional electron. For iss, don't.  
  • After the job is completed:
 grep TOTEN OUTCAR | tail -n 1 # let's call this value E1
  • The XPS shift (Exps) can be calculated as:
 Exps = E1 - E0



Additional information[edit]

Media:Overview.pdf (by Nathan)