User Tools

Site Tools


input_parameters

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
input_parameters [2017/05/05 11:30]
krejcio
input_parameters [2017/05/05 15:38] (current)
Line 1: Line 1:
-=== Reading parameters ===+===== Reading parameters ​=====
  
 **fermi=None** # or 0.0 -- the Fermi level is taken from the DFT calculations;​ e.g. -0.5 -- the Fermi level is shifted by -0.5 eV. **fermi=None** # or 0.0 -- the Fermi level is taken from the DFT calculations;​ e.g. -0.5 -- the Fermi level is shifted by -0.5 eV.
  
-**orbs = '​sp'​** # //s// and //p// orbitals of the sample -- calculations approx. 4× faster than '​spd',​ more tip orbitals allowed (//dz2//, //dxz// and //dyz//) and tilting orbitals ​are allowed--; '​spd'​ -- works fine for //​Fireball//​ and //​FHI-AIMS//,​ //GPAW// can do mistakes.+**orbs = '​sp'​** # //s// and //p// orbitals of the sample -- calculations approx. 4× faster than '​spd',​ more tip orbitals allowed (//dz2//, //dxz// and //dyz//) and tilting ​of orbitals ​is allowed--; '​spd'​ -- works fine for //​Fireball//​ and //​FHI-AIMS//,​ //GPAW// can do mistakes.
  
 **pbc=(0,​0)** ​ # only the original geometry; (0.5,0.5) three more cells are added to the right and behind the original geometry; (1,1) 8 cells are added around the original geometry ; (2,2) 8+16 cells are added around the original geometry ... **pbc=(0,​0)** ​ # only the original geometry; (0.5,0.5) three more cells are added to the right and behind the original geometry; (1,1) 8 cells are added around the original geometry ; (2,2) 8+16 cells are added around the original geometry ...
Line 13: Line 13:
 **cut_max=5.0** # all molecular orbitals (eigen-states) with their eigen-energies higher than 5.0 eV above the Fermi level are excluded from the calculations. **cut_max=5.0** # all molecular orbitals (eigen-states) with their eigen-energies higher than 5.0 eV above the Fermi level are excluded from the calculations.
  
-note For a proper slab (more than 3 layers of substrate, big unit cell approx. >= 15 Å in //x// and //y//) the cut can be only twice eta (width of the Lorentzian used for calcultions) + extreme voltage used for in the dI/dV or STM calculations. For single molecules wider cut, so all important molecular orbitals are in the cut. If there is NO molecular orbital in the reading procedure, than the procedure will stop itself.+noteFor a proper slab (more than 3 layers of substrate, big unit cell approx. >= 15 Å in //x// and //y//, since only gamma point can be used now) the cut can be only twice eta (width of the Lorentzian used for calcultions) + extreme voltage used for in the dI/dV or STM calculations. For single molecules wider cut, so all important molecular orbitals are in the cut. If there is NO molecular orbital in the reading procedure, than the procedure will stop itself.
  
 **cut_at=-1** # all atoms of the substrate are taken into account; 50 - tunneling from only FIRST fifty atoms of the sample are taken into account -- normally only the adsorbed molecule and/or the first layer of substrate are important for the calculations. **cut_at=-1** # all atoms of the substrate are taken into account; 50 - tunneling from only FIRST fifty atoms of the sample are taken into account -- normally only the adsorbed molecule and/or the first layer of substrate are important for the calculations.
Line 19: Line 19:
 **lvs = None** # parameter only when //​Fireball//​ inputs are read -- lattice vector of the cell  --, if periodic boundary conditions (PBC) are not stated -- pbc=(0,0) -- then None is fine;; if PBC are required, then 3×3 python/​numpy array containing cell parameters is needed for Fireball input you can get them by e.g. np.loadtxt('​input.lvs'​);​ In the case of FHI-AIMS and GPAW this parameter is read automatically. **lvs = None** # parameter only when //​Fireball//​ inputs are read -- lattice vector of the cell  --, if periodic boundary conditions (PBC) are not stated -- pbc=(0,0) -- then None is fine;; if PBC are required, then 3×3 python/​numpy array containing cell parameters is needed for Fireball input you can get them by e.g. np.loadtxt('​input.lvs'​);​ In the case of FHI-AIMS and GPAW this parameter is read automatically.
  
-**lower_atoms=[]**+**lower_atoms=[]** ​# normally doesn'​t do anything; In special cases -- in the molecule are elements with rather different barrier for tunneling (like an elements with very low or high electronegativity and therefore charged in the molecule) -- some of the atoms needs to have different tunneling than other. These atoms are named here, but BEWARE python numbering is applied here -- e.g. [0,1,2,3] means that 1st four atoms will have rescaled their tunneling.
  
-**lower_coefs=[]**+**lower_coefs=[]** # normally doesn'​t do anything; Here are written rescaling constants (lowering coefficients) for each atoms named in **lower_atoms** -- e.g. [0.5,​0.5,​0.25,​0.25] means that 1st two atoms have lowered their contribution to tunneling by factor of two and only one quarter of tunneling is taken into account for atom 3 and 4 in the **lower_atoms** list. 
 + 
 +# note: So far this was used only for a TOAT molecule where oxygens have they rescaling constants (lowering coefficients) set to 0.5. 
 + 
 +# note2: Since //​d//​-orbitals have a faster decay, than //s// and //p// orbitals, then all tunelling contributions from //d// orbitals are automatically decreased. A constant 0.2 is used -- it equals to a ratio between radial function of valence //s// and //d// at 4-7 Å above the atom. 
 + 
 +===== Running parameters ===== 
 + 
 +=== dI/dV (no tilting of orbitals) ===  
 + 
 +**__dIdV( V, WF, eta ,eig, R, Rat, coes, orbs='​sp',​ s=0.0, px =0.0, py=0.0, pz=0.0, dxz=0.0, dyz=0.0, dz2=0.0)__** 
 + 
 +**V** # applied sample bias = (energy vs. the Fermi Level in eV). 
 + 
 +**WF** # the Work-function (normally ~5 eV gives reasonable results). 
 + 
 +**eta** # Width of the Lorentzian function for energy smearing deppending on system it can reach various values: for single molecular orbital very low number -- 1e-6 eV; For standard slabs -- 0.05-0.1 eV; For low layered or small slabs -- 0.3-0.5 eV. 
 +  
 +**eig** # eigenenergies of sample states (=molecular orbitals) (given by 1st output of 3 of the reading procedure). 
 + 
 +**R**  #input of points in which you calculate dI/dV (relaxed via PP-AFM -- you need to have linked PPAFM part and GridUtils of PPAFM to get them; or nonrelaxed via ReadSTM.mkSpaceGrid). 
 + 
 +**Rat** # position of atoms of the sample (given by 3rdt output of 3 of the reading procedure). 
 + 
 +**coes** # LCAO coefficients (given by 2nd output of 3 of the reading procedure). 
 + 
 +**orbs='​sp'​** # the same as in Reading parameters 
 + 
 +**s=0.0** #  <​0.0,​1.0>​ -- contribution to the tunneling to/from //s// orbital on the PP. 
 + 
 +**px=0.0** #  <​0.0,​1.0>​ -- contribution to the tunneling to/from //px// orbital on the PP. 
 + 
 +**py=0.0** #  <​0.0,​1.0>​ -- contribution to the tunneling to/from //py// orbital on the PP. 
 + 
 +**pz=0.0** #  <​0.0,​1.0>​ -- contribution to the tunneling to/from //pz// orbital on the PP. 
 + 
 +**dxz=0.0** #  <​0.0,​1.0>​ -- contribution to the tunneling to/from //dxz// orbital on the PP. 
 + 
 +**dyz=0.0** #  <​0.0,​1.0>​ -- contribution to the tunneling to/from //dyz// orbital on the PP. 
 + 
 +**dz2=0.0** #  <​0.0,​1.0>​ -- contribution to the tunneling to/from //dz2// orbital on the PP. 
 + 
 +=== dI/dV with tilting orbitals (as PP relaxes) ===  
 + 
 +**__dIdV_tilt( V, WF, eta ,eig, R, R0, Rat, coes, orbs='​sp',​ pz=0.0, pxy =0.0, dz2=0.0, dxyz=0.0, len_R=4.0, al=1.0)__** 
 + 
 +# **V-coes**: no change 
 + 
 +**orbs='​sp'​** # only '​sp'​ works here 
 + 
 +**pz=0.0** #  <​0.0,​1.0>​ -- contribution to the tunneling to/from tilting //pz// orbital on the PP. 
 + 
 +**pxy=0.0** #  <​0.0,​1.0>​ -- contribution to the tunneling to/from tilting //px// and //py// orbitals on the PP. 
 + 
 +**dz2=0.0** #  <​0.0,​1.0>​ -- contribution to the tunneling to/from //dz2// orbital on the PP. 
 + 
 +**dxyz=0.0** #  <​0.0,​1.0>​ -- contribution to the tunneling to/from tilting //dxz// and //dyz// orbitals on the PP. 
 + 
 +**len_R=4.0** # length of the PP-tip "​bond";​ 4 Å is an standard length in PPAFM calculations 
 + 
 +**al=1.0** # (0.0,​2.0>​ -- rescalling constants of the tilting; 1.0 -- tilts with the same angle as the PP; 2.0 -- tilts twice as fast; 0.5 -- tilts twice as slow. 
 + 
 +=== STM (no tilting of orbitals) === 
 + 
 +**__STM( V, nV, WF, eta ,eig, R, Rat, coes, orbs='​sp',​ s=0.0, px =0.0, py=0.0, pz=0.0, dxz=0.0, dyz=0.0, dz2=0.0, WF_decay=1.0)__** 
 + 
 +# note: everything the same as dI/dV except for: 
 + 
 +**nV** # number of dI/dV steps - should be approx. V/eta +1 ; STM is rectangular integrated from the dI/dV;  
 + 
 +**WF_decay=1.0** ​ # How the Workfunction (barrier and therefore tunneling decay) is changing with increasing/​decreasing voltage for each dI/dV step; 1.0 -- the change of the tunneling decay scales with the voltage (at V=1.0 is WF=4.0 eV); 0.0 -- no change with the voltage. 
 + 
 + 
 +=== IETS (no tilting of orbitals) === 
 + 
 +**//__UNDER DEVELOPMENT__//​**
input_parameters.1493976625.txt.gz · Last modified: 2017/05/05 11:30 (external edit)