SCANNING TUNNELING SPECTROSCOPY

Remove["Global`*"]

Highlights

Abstract

Off[General::"spell", General::"spell1"]; Needs["Graphics`Arrow`"]; tera = (10^12); micro = (1/(10^6)); giga = (10^9); nano = (1/(10^9)); mega = (10^6); pico = (1/(10^12)); kilo = (10^3); femto = (1/(10^15)); milli = (1/(10.^3)); atto = (1/(10^18)); NSub
       = {c -> 2.99792458 (10^8), e -> (1.6021773/(10^19)), 
        h -> (6.6260755/(10.^34)), hbar -> (1.05457/(10.^34)), 
        K -> (1.380658/(10^23)), me -> (9.109389/(10^31)), 
        mu0 -> ((4. π)/(10^7)), eps0 -> (8.85419/(10^12))}; ESi = 0.179 tera; rhoSi = 2330; nuSi = 0.28; ESiO2 = 0.06 tera; rhoSiO2 = 2200; nuSiO2 = 0.3; ESi3N4 = 0.15 tera; rhoSi3N4 = 3100; nuSi3N4 = 0.24; EAu = 0.08 tera; rhoAu = 19300; nuAu = 0.42; ENi = 0.207 tera; rhoNi = 8900; nuNi = 0.41; EW = 0.345 tera; rhoW = 19300; nuW = 0.28; EPt = 0.17 tera; rhoPt = 21400; nuPt = 0.39; EIr = 0.52 tera; rhoIr = 22500; nuIr = 0.3; EHOPG = 0.2 tera; rhoHOPG = 2250; nuHOPG = 0.3; EPol = 0.001 tera; rhoPol = 1000; nuPol = 0.3; xx = 0.8; EPtIr = xx 0.8 EPt + (1 - xx) EIr; rhoPtIr = xx rhoPt + (1 - xx) rhoIr; nuPtIr = 0.3; opt
       = {PlotRange -> All, AxesOrigin -> {0, 0}, 
        Frame -> True, GridLines -> Automatic, 
        DefaultFont -> {"Times-Roman", 8}, 
        PlotStyle 
          -> {Dashing[{.0001}], Dashing[{.0200}], Dashing[{.0200}], 
            Dashing[{.0200}], Dashing[{.0200}], Dashing[{.0001}]}};

Introduction

Scanning Tunneling Spectroscopy

Fermi-Dirac Statistics

Clear[f]; f[En_, EF_, v_, T_] = 
      N[(1/(1 + Exp[((e (En - EF + v))/(K T))])) /. NSub];

tblT = {4.2, 77., 300.};

Fig12x1 = 
      Plot[{f[En, 0., 0., tblT[[1]]], 
          f[En, 0., 0., tblT[[2]]], 
          f[En, 0., 0., tblT[[3]]]}, {
          En, -.1, .1}, 
        FrameLabel -> {"Energy in eV", "Probability"}, 
        Evaluate[opt]];

vb = 1; Fig12x2 = 
      Plot[f[En, 0, 0, tblT[[3]]] - 
          f[En, 0, vb, tblT[[3]]], {En, 
          -2, 1}, 
        FrameLabel -> {"Energy in eV", "Probability"}, 
        Evaluate[opt]];

Print["side-wall width = ", 
      ((4 K tblT[[3]])/e) /. NSub, 
      " [eV]"]

Clear[fc]; fc[En_, EF_, T_] = f[En, EF, 0, T] (1. - f[En, EF, 0, T]);

Fig12x3 = 
      Plot[Evaluate[{
            fc[En, 0, tblT[[1]]], 
            fc[En, 0, tblT[[2]]], 
            fc[En, 0, tblT[[3]]]}], {En, 
          -.1, .1}, 
        FrameLabel -> {"Energy in eV", "Convolution"}, 
        Evaluate[opt]];

Feenstra's Parameter

File Reading

Initialization

\(SetDirectory["/Users/sarid/papers/3.0book"]; 

    \(name = "sts1601"; \)\)

File Characterization

Clear[tbl1]; tbl1 = 
      ReadList[name, Number, RecordSeparators -> {"\n", " "}];

dim1 = 
      Dimensions[tbl1][[1]]; min1 = Min[tbl1]; max1 = Max[tbl1]; del1 = Max[tbl1] - Min[tbl1]; mid1 = tbl1[[(dim1/2)]]; Print["dimension = ", dim1]; Print["minimum   = ", min1]; Print["maximum   = ", max1]; Print["delta     = ", del1]; Print["middle    = ", mid1];

File Preparation

Averaging

Clear[tbl2, b1, b2]; nav = 5; tbl2 = tbl1; Do[b1 = tbl2; 
      b2 = Table[
          N[(1/3) (
                b1[[i - 1]] + 
                  b1[[i]] + 
                  b1[[i + 1]])], {i, 
            2, 255}]; 
      tbl2 = Join[{b2[[1]]}, 
          b2, {b2[[254]]}], {n, 1, 
        nav}];

dim2 = 
      Dimensions[tbl2][[1]]; del2 = Max[tbl2] - Min[tbl2]; Print["dimension = ", dim2];

Normalization

Clear[tbli]; tbli = 
      Table[N[((tbl2[[n]] - 
              tbl2[[(dim1/2)]])/del2)], {
          n, 1, dim1, 1}];

dimi = 
      Dimensions[tbli][[1]]; mini = Min[tbli]; maxi = Max[tbli]; midi = tbli[[dimi]]; deli = Max[tbli] - Min[tbli]; Print["dimension = ", dimi]; Print["minimum   = ", mini]; Print["maximum   = ", maxi]; Print["delta     = ", deli]; Print["middle    = ", 
      tbli[[(dimi/2)]]];

Voltage Information

vmax = 3.; delv = ((2 vmax)/dim1);

Clear[tblv]; tblv = Table[(((n - (dim1/2)) 2 vmax)/dim1), {n, 1, dim1}];

Print["goof = ", 
      tblv[[1]] + vmax]

Spectroscopic Data

$i(v)$

tbliv = 
      Table[{tblv[[n]], 
          Abs[tbli[[n]]]}, {n, 1, 
          dim1}];

xlimit = .1; ylimit = .3; Fig12x4 = 
      ListPlot[tbliv, 
        PlotRange -> {{-vmax + xlimit, vmax - xlimit}, {0, ylimit}}, 
        Frame -> True, PlotJoined -> True, 
        GridLines -> Automatic, 
        DefaultFont -> {"Times-Roman", 8}, 
        FrameLabel -> {"Energy in eV", "i in a.u."}];

$\partial i/\partial v$

c1 = 
      N[Table[((tbli[[n + 5]] - 
              tbli[[n - 5]])/delv), {n, 
            1 + 5, dim1 - 5}]]; c2 = {0, 0, 0, 0, 0}; c3 = {0, 0, 0, 0, 0}; tbldidv = Join[c2, c1, c3];

dimdidv = 
      Dimensions[tbldidv][[1]]; Print["dimension = ", dimdidv];

tbldidvv = 
      Table[{tblv[[n]], 
          Abs[tbldidv[[n]]]}, {n, 2, 
          dim1}];

xlimit = .2; ylimit = 3.; Fig12x5 = 
      ListPlot[tbldidvv, 
        PlotRange -> {{-vmax + xlimit, vmax - xlimit}, {0, ylimit}}, 
        Frame -> True, PlotJoined -> True, 
        GridLines -> Automatic, 
        DefaultFont -> {"Times-Roman", 8}, 
        FrameLabel -> {"Energy in eV", "didv in a.u."}];

$\partial \ln i/\partial \ln v$

dd = Max[tbli]/100; tbldlnidlnvv = 
      N[Table[{tblv[[n]], 
            Abs[tbldidv[[n]] 
                  tblv[[n]]]
                /(Abs[tbli[[n]]] + dd
                )}, {n, 1, dim1}]];

xlimit = .5; ylimit = 110.; dlnidlnvGraphics = 
      ListPlot[tbldlnidlnvv, 
        PlotRange -> {{-vmax + xlimit, vmax - xlimit}, {0, ylimit}}, 
        Frame -> True, PlotJoined -> True, 
        DefaultFont -> {"Times-Roman", 8}, 
        GridLines -> Automatic, 
        FrameLabel -> {"Energy in eV", "dlogidlogv in a.u."}, 
        DisplayFunction -> Identity];

Comparison of STS Results

tblx0 = {-3.33, -4.36, -6.05, -7.22, -7.34};

delE = 5.3; tblx = tblx0 + delE

z0 = 100.; tblxGraphics = 
      Plot[Evaluate[{
            z0 fc[En, tblx[[1]], 300.], 
            z0 fc[En, tblx[[2]], 300.], 
            z0 fc[En, tblx[[3]], 300.], 
            z0 fc[En, tblx[[4]], 300.], 
            z0 fc[En, tblx[[5]], 
                300.]}], {En, -2.5, 2.5}, PlotRange -> All, 
        DisplayFunction -> Identity];

Fig12x6 = 
      Show[{dlnidlnvGraphics, tblxGraphics, 
          Graphics[{Thickness[0.01], 
              Text["t1g", {
                  tblx[[1]], 95}], 
              Text["t1u", {
                  tblx[[2]], 95}], 
              Text["hu", {tblx[[3]], 
                  95}], Text[
                "hg", {
                  tblx[[4]] + .1, 95}], 
              Text["gg", {
                  tblx[[5]] - .1, 95}], 
              Line[{{tblx[[1]], 80}, {
                    tblx[[1]], 90}}], 
              Line[{{tblx[[2]], 80}, {
                    tblx[[2]], 90}}], 
              Line[{{tblx[[3]], 80}, {
                    tblx[[3]], 90}}], 
              Line[{{tblx[[4]], 80}, {
                    tblx[[4]], 90}}], 
              Line[{{tblx[[5]], 80}, {
                    tblx[[5]], 90}}]}]}, 
        Frame -> True, DisplayFunction -> $DisplayFunction];