#STM simulation tip = GPAW('tip') srf = GPAW('srf') h0, s0 = pickle.load(open('lead_hs.pckl')) h1, s1 = pickle.load(open('tip_hs.pckl')) h2, s2 = pickle.load(open('srf_hs.pckl')) assert abs(h0.imag).max() < 1e-14 assert abs(s0.imag).max() < 1e-14 h0 = h0.real s0 = h0.real stm = STM(tip, srf, hs10=(h0[0], s0[0]), hs1=(h1[0], s1[0]), hs2=(h2[0], s2[0]), hs20=(h0[0], s0[0]), align_bf=0) stm.set(dmin=5) stm.initialize() stm.scan() stm.linescan() if 0: stm.plot(repeat=[3, 3]) energy_tolerance = 0.0003 niter_tolerance = 0 equal(e1, -5.29095, energy_tolerance)
niter3 = calc.get_number_of_iterations() calc.write('srf.gpw', region='surface', cvl=2) dump_hs(calc, 'srf', region='surface', cvl=2) #STM simulation tip = GPAW('tip') srf = GPAW('srf') h0, s0 = pickle.load(open('lead_hs.pckl')) h1, s1 = pickle.load(open('tip_hs.pckl')) h2, s2 = pickle.load(open('srf_hs.pckl')) stm = STM(tip, srf, hs10=(h0[0], s0[0]), hs1=(h1[0], s1[0]), hs2=(h2[0], s2[0]), hs20=(h0[0], s0[0]), align_bf=0) stm.set(dmin=5) stm.initialize() stm.scan() stm.linescan() if 0: stm.plot(repeat=[3, 3]) energy_tolerance = 0.0003 niter_tolerance = 0
# tip data tip = GPAW('tip', txt=None) h1, s1 = pickle.load(open('tip_hs.pckl')) # h and s matrix h10, s10 = pickle.load(open('tip_p_hs.pckl')) #principal layer h and s matrix # surface data srf = GPAW('srf', txt=None) h2, s2 = pickle.load(open('srf_hs.pckl')) h20, s20 = pickle.load(open('srf_p_hs.pckl')) # set up the stm-calculator stm = STM(tip, srf, hs1=(h1[0], s1[0]), # tip hs10=(h10[0], s10[0]), # tip principal layer hs2=(h2[0], s2[0]), # surface hs20=(h20[0], s20[0]), # surface principal layer bias = 0.05, # bias de = 0.05/7., # spacing of the energy grid at which the # Green's functions should be evaluated logfile='scan.log') stm.set(dmin=6) # set tip to surface distance stm.initialize() stm.scan() stm.linescan([[0, 0], [27, 27]]) # linescan along the [111] direction # plot the current map and the linescan stm.plot(label='I[nA]')
tip = GPAW('tip', txt=None) h1, s1 = pickle.load(open('tip_hs.pckl')) # h and s matrix h10, s10 = pickle.load(open('tip_p_hs.pckl')) #principal layer h and s matrix # surface data srf = GPAW('srf', txt=None) h2, s2 = pickle.load(open('srf_hs.pckl')) h20, s20 = pickle.load(open('srf_p_hs.pckl')) # set up the stm-calculator stm = STM( tip, srf, hs1=(h1[0], s1[0]), # tip hs10=(h10[0], s10[0]), # tip principal layer hs2=(h2[0], s2[0]), # surface hs20=(h20[0], s20[0]), # surface principal layer bias=0.05, # bias de=0.05 / 7., # spacing of the energy grid at which the # Green's functions should be evaluated logfile='scan.log') stm.set(dmin=6) # set tip to surface distance stm.initialize() stm.scan() stm.linescan([[0, 0], [27, 27]]) # linescan along the [111] direction # plot the current map and the linescan stm.plot(label='I[nA]')