Differences

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

the_hoppings [2014/07/08 13:22]
prokop
the_hoppings [2014/07/08 13:35] (current)
prokop
Line 1: Line 1:
- \\ 
- 
-==== The hoppings (tip_sample_i_j.inp file) ==== 
 +====== The hoppings ( interactions_i_j.dat or tip_sample_i_j.inp files ) ======
In our approximation, we use a dimer formed by one kind of atom from In our approximation, we use a dimer formed by one kind of atom from
Line 14: Line 12:
the STM format we need (“fireball.in”): the STM format we need (“fireball.in”):
-__&OPTION__ part \\ +  &OPTION 
- +   ifixcharges = 1 
-ifixcharges = 1 \\ +   nstepf = 1 
-nstepf = 1 \\  +   &END 
- +   &OUTPUT 
-__&OUTPUT__ part \\ +   iwrthop = 1 
- +  &END
-iwrthop = 1+
To do this, we can use the script “run_hops.com” which is necessary to To do this, we can use the script “run_hops.com” which is necessary to
modify in dependence what output format you expect (read the “README” file of modify in dependence what output format you expect (read the “README” file of
this script). this script).
- 
- \\ 
===== The “run_hops.com” script: ===== ===== The “run_hops.com” script: =====
-#!/bin/bash \\ +  #!/bin/bash  
-#mv -f interactions.dat interactions.dat.old \\ +   #mv -f interactions.dat interactions.dat.old  
-echo 1 > lockfile \\ +   echo 1 > lockfile  
-tipo1="`cat lista`" \\ +   tipo1="`cat lista`"  
-for i in $tipo1; \\  +   for i in $tipo1;  
-do \\ +   do  
-tipo2="`cat lockfile`" \\ +   tipo2="`cat lockfile`"  
-if [ $tipo2 == "2" ]; \\  +   if [ $tipo2 == "2" ];  
-then \\ +   then  
-echo 1 > lockfile\\ +   echo 1 > lockfile 
-name2="`echo $i`"; \\ +   name2="`echo $i`";  
-sed "s/AAAAAAA/$name2/g" tip_sample_aux >> interactions.dat; \\ +   sed "s/AAAAAAA/$name2/g" tip_sample_aux >> interactions.dat;  
-echo $i \\ +   echo $i  
-else \\ +   else  
-echo 2 > lockfile \\ +   echo 2 > lockfile  
-name1="`echo $i`"; \\ +   name1="`echo $i`";  
-sed "s/AAAAAAA/$name1/g" model.bas > tmp.bas; \\ +   sed "s/AAAAAAA/$name1/g" model.bas > tmp.bas;  
-./fireball.k.x > out_tmp; \\ +   ./fireball.k.x > out_tmp;  
-fi \\ +   fi  
-done \\ +   done  
-cat header.dat > interaction_X_Y.dat \\ +   cat header.dat > interaction_X_Y.dat  
-cat interactions.dat >> interaction_X_Y.dat \\ +   cat interactions.dat >> interaction_X_Y.dat  
-rm -f lockfile \\ +   rm -f lockfile  
-rm -f inter_aux.dat \\ +   rm -f inter_aux.dat  
-rm -f tip_sample_aux +   rm -f tip_sample_aux
- \\ 
===== The “README” file: ===== ===== The “README” file: =====
-a short description how to generate hopping data \\ +a short description how to generate hopping data, files we need:  
-files we need: \\ +   * fireball.in  
-fireball.in \\ +   * model.bas  
-model.bas \\ +   * lista  
-lista \\ +   * header.dat
-header.dat \\+
-=======A. edit: \\ +=== A. edit: ===  
-CHARGES \\ +   * CHARGES  
-model.bas \\+   * model.bas
-=======B. edit run_hops.com \\ +=== B. edit run_hops.com ===
-If you need the **fireball output format**, than to the +
-"interactions.dat" you have to write +
-the inter_aux.dat \\ +
-If you need the **STM code output format**, than to the +
-"interactions.dat" you have to write +
-the tip_sample_aux. \\+
-The difference is amount of some writen informations at +If you need the **fireball output format**, than to the "interactions.dat" you have to write the inter_aux.dat 
-the header of interaction (hopping) file, number of interactions and even the length units. For +  
-STM format it is a.u. when for the fireball format it is Angstroms.+If you need the **STM code output format**, than to the "interactions.dat" you have to write the tip_sample_aux.
-=======C. launch \\ +The difference is amount of some writen informations at the header of interaction (hopping) file, number of interactions and even the length units. For STM format it is a.u. when for the fireball format it is Angstroms.
-./run_hop.com \\+
-=======D. modify header of interacti_X_Y.dat file \\ +=== C. launch ===
-!*Interactions for W(spd)-C(sp) using FIREBALL program*! \\ +
-57 !number of distances \\ +
-2.00000 30.00000 !dist_min, dist_max \\ +
-10 !number of interactions \\+
-//In the case you choose the STM output format, don't forget +./run_hop.com
-to remove duplicate (symmetric) interactions +
-from the "interactions_X_Y.inp" file. You have to write there +
-even the line of 3 more numbers (2 3 10) +
-which gives us the number of the shells of the tip and +
-sample respectively.//+
-!*Interactions for W(spd)-C(sp) using FIREBALL program*! \\ +=== D. modify header of interacti_X_Y.dat file === 
-57 !number of distances \\ + 
-2.00000 30.00000 !dist_min, dist_max \\ +    !*Interactions for W(spd)-C(sp) using FIREBALL program*!  
-2 3 10 !number of shells of the tip, of the +   57 !number of distances  
-sample, number of interactions \\+   2.00000 30.00000 !dist_min, dist_max  
 +   10 !number of interactions  
 + 
 +In the case you choose the STM output format, don't forget to remove duplicate (symmetric) interactions from the "interactions_X_Y.inp" file. You have to write there even the line of 3 more numbers (2 3 10)which gives us the number of the shells of the tip and sample respectively. 
 + 
 +    !*Interactions for W(spd)-C(sp) using FIREBALL program*!  
 +    57 !number of distances  
 +    2.00000 30.00000 !dist_min, dist_max  
 +    2 3 10 !number of shells of the tip, of the 
 +   sample, number of interactions  
 + 
 +If we put the hoppings for all the distances in a file, we will have the basis for the "tip_sample_i_j.inp" (or "interaction_i_j.dat") files (see the example in the **STM** code). Then we have to complete the file with the parameters for the long distances approximation.
-//If we put the hoppings for all the distances in a file, we will have the basis 
-for the "tip_sample_i_j.inp" (or "interaction_i_j.dat") files (see the example in the **STM** 
-code). Then we have to complete the file with the parameters for the long 
-distances approximation.// \\ 
Look at the header: Look at the header:
-!*Interactions for W‐Tid using FIREBALL program*! \\ +    !*Interactions for W‐Tid using FIREBALL program*! 
-57 \\ +   57 
-2.000000 30.00000 \\ +   2.000000 30.00000 
-3 3 14 \\ +   3 3 14 
-0 0 0 ‐21.0000 1.0000 0.5738 1 1 14.5000 \\ +   0 0 0 ‐21.0000 1.0000 0.5738 1 1 14.5000 
-0 1 0 95.0000 1.0000 0.5738 1 1 16.5000 \\ +   0 1 0 95.0000 1.0000 0.5738 1 1 16.5000 
-. \\ +  
-. \\ +  
-. \\ +   . 
-where 57 is the number of distance steps, from 2 au to 30 ua. 3 and 3 are + 
-the number of shells for each kind of atom on the tip and the sample respectively. +where 57 is the number of distance steps, from 2 au to 30 ua. 3 and 3 are the number of shells for each kind of atom on the tip and the sample respectively. 14 is the total number of interactions for each distance. Finally, the 14 next rows are related with the long‐range approximation. 0,0,0 means orbital s (0)in the tip and orbital s (0) in the sample and an interaction sigma (0). Orbitals p will be 1 and d 2, the interaction pi will be 1 and delta 2. 
-14 is the total number of interactions for each distance. Finally, the 14 next rows + 
-are related with the long‐range approximation. 0,0,0 means orbital s (0)in the tip +For long distances, we do the parallel planes approximation using the expression:
-and orbital s (0) in the sample and an interaction sigma (0). Orbitals p will be 1 +
-and d 2, the interaction pi will be 1 and delta 2. \\ +
-For long distances, we do the parallel planes approximation using +
-the expression: \\+
A.e<sup>-W.r</sup> A.e<sup>-W.r</sup>
-The "A" (4th value in the row) is the independent value we +The "A" (4th value in the row) is the independent value we have to find.  
-have to find. "α" (5th value) depends on the orbitals you have in the hoppings, the + 
-expression used is: α=l1+l2+1, but sometimes it could be changed depending on +"α" (5th value) depends on the orbitals you have in the hoppings, the expression used is:  
-the fix conditions. The "W" (6th) is related with the work function of the + 
-materials in the hopping (Hartree): +α=l1+l2+1,  
 + 
 +but sometimes it could be changed depending on the fix conditions.  
 + 
 +The "W" (6th) is related with the work function of the materials in the hopping (Hartree):
W = (ω<sub>T</sub> + ω<sub>S</sub>)<sup>1/2</sup> W = (ω<sub>T</sub> + ω<sub>S</sub>)<sup>1/2</sup>
-where ω’s are the work function for +where ω’s are the work function for each kind of atom. There is no function as **BEGIN** or **CREATE** to calculate these long‐distance parameters, but there is a tool in the **XEO** program made by Daniel Gonzalez. Here you have to change by hand the values of "A" till you “see” (with the eyes) a coincidence in the value and the derivative. Finally, let’s mention that the 7th and 8th values in the row are related with the simple basis or double basis 
-each kind of atom. There is no function as **BEGIN** or **CREATE** to calculate these +case. When you have a double basis you need an extra parameter to differentiate from the simple basis orbital. The last value is the cut‐off radius.
-long‐distance parameters, but there is a tool in the **XEO** program made by Daniel +
-Gonzalez. Here you have to change by hand the values of "A" till you “see” (with the +
-eyes) a coincidence in the value and the derivative. Finally, let’s mention that the +
-7th and 8th values in the row are related with the simple basis or double basis +
-case. When you have a double basis you need an extra parameter to differentiate +
-from the simple basis orbital. \\ +
-The last value is the cut‐off radius.+
-Here you can download : \\  +Here you can download :  
-========================. \\+========================
="run_hops.com" script  \\ ="run_hops.com" script  \\
="README" file \\ ="README" file \\
========================. ========================.
-\\ 
 
the_hoppings.txt · Last modified: 2014/07/08 13:35 by prokop
 
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki